Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

traceroute enpoints for overlay path drawing functionality #188

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
878 commits
Select commit Hold shift + click to select a range
e3769bc
Merge branch 'ethereum-improvement' of github.com:seed-labs/seed-emul…
wonkr May 14, 2024
6ec2d51
Update README.md
wonkr May 14, 2024
ec489f4
added documentation for chainlink jobs
amanvelani May 15, 2024
1ac3e7b
changed file names : secrets.txt > db_secret.txt, api.txt -> password…
amanvelani May 15, 2024
d9e907b
moved the files inside the /chainlink folder
amanvelani May 15, 2024
8a5488c
added contracts
amanvelani May 15, 2024
30c5079
changed chainlink default email and password
amanvelani May 15, 2024
5abb2de
feat: allow multiple ca servers
fourdim May 16, 2024
62bd6d7
updated readme for contracts folder in ChainlinkService
amanvelani May 16, 2024
65df1a2
minor readme change
amanvelani May 16, 2024
ca1ee37
included github link for original contracts
amanvelani May 16, 2024
6131ba2
updated contracts readme
amanvelani May 16, 2024
f6249a8
updated contracts readme
amanvelani May 16, 2024
9a2ddfb
added a new example
kevin-w-du May 16, 2024
7d11854
minor readme change
amanvelani May 16, 2024
1ad66fd
Merge branch 'ethereum-improvement' of https://github.com/seed-labs/s…
amanvelani May 16, 2024
379b37f
added skeleton code for ethInitAndInfo test cases
amanvelani May 16, 2024
712e840
update ethInitAndInfoServer and update chainlink service.
wonkr May 17, 2024
dfe6e49
Merge branch 'ethereum-improvement' of github.com:seed-labs/seed-emul…
wonkr May 17, 2024
7dbe022
update README.md
wonkr May 17, 2024
fd61be3
feat: no source any more
fourdim May 17, 2024
485efdd
refactor: add more tests for pki
fourdim May 17, 2024
51a915a
Merge branch 'ethereum-improvement' of https://github.com/seed-labs/s…
amanvelani May 17, 2024
f9c8b7a
updated testcase for ethInitInfo
amanvelani May 17, 2024
4737f70
ethInitAndInfo test cases added
amanvelani May 17, 2024
31f6763
added readme for ethInitInfo testcase
amanvelani May 17, 2024
5ce61f1
adjust the parameters
kevin-w-du May 17, 2024
49ddc70
added some suggestions
kevin-w-du May 17, 2024
86d6d67
example added for deploying smart contract using genesis block
amanvelani May 17, 2024
511491e
updated example and added test_deployment script
amanvelani May 17, 2024
7da0b81
added genesis example readme
amanvelani May 17, 2024
2150eb3
Support multiple traffic service on single virtual node
mahbub21463 May 21, 2024
aac33df
Fix
mahbub21463 May 21, 2024
4d9f0ac
genesis deploy contract test cases added
amanvelani May 21, 2024
c79a543
deploy contract genesis block test case ✅
amanvelani May 21, 2024
284769e
moved chainlink files inside /chainlink folder
amanvelani May 21, 2024
eec8416
removed unnecessary abi and bin files
amanvelani May 21, 2024
8f70280
readme update
amanvelani May 21, 2024
a0dcaaa
Merge pull request #250 from mahbubalamdev/traffic-generator-improvement
kevin-w-du May 22, 2024
7f12b1d
Merge pull request #251 from amanvelani/ethereum-improvement
kevin-w-du May 22, 2024
274dd81
remove unnecessary comments
wonkr May 23, 2024
033fb1a
remove .mov files
wonkr May 23, 2024
6c4c05b
Merge branch 'mahbubalamdev-traffic-generation-documentation-improved…
wonkr May 23, 2024
a7d2d18
Merge branch 'development' of github.com:seed-labs/seed-emulator into…
wonkr May 23, 2024
0834e68
Merge pull request #248 from fourdim/multi-ca
wonkr May 23, 2024
764c1dc
Merge branch 'development' into ethereum-improvement
wonkr May 23, 2024
6c8d4ae
Merge pull request #252 from seed-labs/ethereum-improvement
wonkr May 23, 2024
be0c5a0
Merge branch 'ipfs-kubo' of https://github.com/jovannimosca/seed-emul…
wonkr May 23, 2024
7460a1e
Update kubo.md
wonkr May 23, 2024
460cf17
Merge branch 'jovannimosca-ipfs-kubo' into kubo-improvement
wonkr May 23, 2024
f2da8f1
Merge branch 'ipfs-kubo' of https://github.com/jovannimosca/seed-emul…
wonkr May 23, 2024
06bf7fd
Merge branch 'no-source-any-more' of https://github.com/fourdim/seed-…
wonkr May 23, 2024
7e2b1f0
git push origin developmentMerge branch 'fourdim-no-source-any-more' …
wonkr May 23, 2024
4c3defc
rename `test` folder to `tests`
wonkr May 23, 2024
a3e8391
Merge branch 'development' into no-source-any-more
wonkr May 23, 2024
b119ee5
Merge pull request #247 from fourdim/no-source-any-more
wonkr May 23, 2024
9b2960a
Merge branch 'development' of github.com:seed-labs/seed-emulator into…
wonkr May 23, 2024
ba008f7
fix error from conflicts
wonkr May 23, 2024
bdd5f9d
Remove redundant files.
wonkr May 23, 2024
33b860c
Merge branch 'development' of https://github.com/seed-labs/seed-emula…
wonkr May 23, 2024
8d5e001
change package name from test to tests
wonkr May 23, 2024
5fefc95
Update __init__.py
wonkr May 23, 2024
10e24b3
Update ScionBwtesterTestCase.py
wonkr May 23, 2024
e389806
updated the permision
kevin-w-du May 23, 2024
0e12413
Fix DockerImageConstant error
wonkr May 24, 2024
4d1cae1
Merge branch 'development' of https://github.com/seed-labs/seed-emula…
wonkr May 24, 2024
2bcf5d7
Merge pull request #253 from seed-labs/development
wonkr May 24, 2024
2fcc956
Update test-emulator.py
wonkr May 24, 2024
9d16afd
Merge pull request #254 from seed-labs/development
wonkr May 24, 2024
6f2b1ba
update `getAllServerNames` method in `EthereumService` and `Blockchai…
wonkr May 24, 2024
3220491
updated the D00 example and manual
kevin-w-du May 24, 2024
6fbe344
added storage functionality for genesis block
amanvelani May 24, 2024
c71547c
new test cases added to tests/run-tests.py
amanvelani May 24, 2024
d5fed19
Merge branch 'seed-labs:ethereum-improvement' into ethereum-improvement
amanvelani May 24, 2024
33b6d58
Merge remote-tracking branch 'origin/eth-genesis-testing' into ethere…
amanvelani May 24, 2024
3c2f872
Merge branch 'ethereum-improvement' of https://github.com/amanvelani/…
amanvelani May 24, 2024
1e0d0f5
readme update for D23_deploy_contract
amanvelani May 24, 2024
ffc6c9e
minor update
amanvelani May 24, 2024
ecd62d4
test cases updated for genesis
amanvelani May 24, 2024
7cb0ffe
added the code to generate accounts
kevin-w-du May 25, 2024
b8de3c4
updated the manual
kevin-w-du May 25, 2024
7360f10
fixed a small error
kevin-w-du May 25, 2024
f5398c5
Merge pull request #255 from amanvelani/ethereum-improvement
wonkr May 25, 2024
c4e11b5
revised
kevin-w-du May 25, 2024
531d3bf
added a note
kevin-w-du May 25, 2024
d2f0623
genesis storage calculation code updated
amanvelani May 25, 2024
7390d6e
Merge pull request #256 from amanvelani/ethereum-improvement
kevin-w-du May 25, 2024
bcbe64e
moved D23 example to the experiment folder
kevin-w-du May 25, 2024
489528b
renamed folders
kevin-w-du May 25, 2024
32c0233
updated the manual
kevin-w-du May 25, 2024
2458c8d
updated manual
kevin-w-du May 25, 2024
3452f4e
updated the manual
kevin-w-du May 26, 2024
fb42c78
added two get APIs
kevin-w-du May 27, 2024
b4a625c
changed a service name; added dir_prefix
kevin-w-du May 27, 2024
cfcd304
taken the inline content out as separate files
kevin-w-du May 28, 2024
89eb4c9
replace the inline content with separate files
kevin-w-du May 28, 2024
350d157
updated the manual
kevin-w-du May 28, 2024
fde19a1
updated the manuals
kevin-w-du May 29, 2024
6084bb8
removed Eth from some of the API name
kevin-w-du May 29, 2024
8a03ac8
revised comments
kevin-w-du May 29, 2024
2627463
revised the chainlink
kevin-w-du May 29, 2024
43478a2
the API name has changed, so revise accordingly
kevin-w-du May 29, 2024
07ecef0
revised the example
kevin-w-du May 29, 2024
b468bb8
modified the constructor of the service
kevin-w-du May 29, 2024
3dc6d0a
modified the example
kevin-w-du May 29, 2024
c642495
minor change
kevin-w-du May 29, 2024
83089b3
update to bind server and physical node(host) in sequential order ins…
wonkr May 30, 2024
1a666c0
add Node::appendUserStartCommand method
wonkr May 30, 2024
f6f984e
add `Server::addHostName` method. To make sure all host names to be a…
wonkr May 30, 2024
3ef1d10
update: make it to configure /etc/hosts/ first.
wonkr May 30, 2024
4baa0ae
fix warning
wonkr May 30, 2024
d7361a8
reorganized chainlink files
kevin-w-du May 30, 2024
d99737d
modified the binding
kevin-w-du May 30, 2024
d17b9ba
changed the status code
kevin-w-du May 31, 2024
e93e6f3
fixed some bugs
kevin-w-du May 31, 2024
55c1f79
significantly improved the chainlink service
kevin-w-du Jun 1, 2024
2156684
reorganized template files
kevin-w-du Jun 1, 2024
aefc942
added a common base class for two types of chainlink servers
kevin-w-du Jun 1, 2024
a4d3d9b
added the chainlink user file templates
kevin-w-du Jun 1, 2024
11ea199
removed the user service
kevin-w-du Jun 1, 2024
0d4b08f
rewrote the script
kevin-w-du Jun 2, 2024
561d0b4
modified some variable names
kevin-w-du Jun 2, 2024
f90122e
modified variable names
kevin-w-du Jun 2, 2024
b6b91ee
minor revision
kevin-w-du Jun 2, 2024
c89f195
Make improvements
mahbub21463 Jun 2, 2024
4ef47b0
updated several template files
kevin-w-du Jun 2, 2024
6870b38
added a library folder to the project
kevin-w-du Jun 2, 2024
2eaf0f3
removed some entries
kevin-w-du Jun 3, 2024
f0bf0a0
Update documentation
mahbub21463 Jun 3, 2024
e5c7957
temporal updates on faucet
wonkr Jun 3, 2024
c8293dd
Merge branch 'kubo-improvement' of github.com:seed-labs/seed-emulator…
wonkr Jun 3, 2024
ef0954e
rename test to tests
wonkr Jun 3, 2024
4180716
Merge branch 'kubo-improvement' into development
wonkr Jun 3, 2024
ed11fc5
revised the script
kevin-w-du Jun 4, 2024
a82eb31
added libraries
kevin-w-du Jun 4, 2024
32b0d10
renamed libraries to library
kevin-w-du Jun 4, 2024
76dba0b
revised chainlink example
kevin-w-du Jun 4, 2024
e020fe8
restructured the chainlink script programs
kevin-w-du Jun 4, 2024
dc6143a
revised the library
kevin-w-du Jun 4, 2024
c609f1f
restructed the code
kevin-w-du Jun 5, 2024
b41419f
added a user-testing program
kevin-w-du Jun 5, 2024
5266fdb
removed the images
kevin-w-du Jun 5, 2024
f35f4da
revised the manual
kevin-w-du Jun 5, 2024
d964916
revised the manual
kevin-w-du Jun 5, 2024
8dba644
moved C04 to not_ready_examples
kevin-w-du Jun 6, 2024
808cacd
fixed a typo
kevin-w-du Jun 6, 2024
71a6263
took out inline code
kevin-w-du Jun 6, 2024
143ece3
added a small ethereum example
kevin-w-du Jun 6, 2024
5475f55
added a command-line argument
kevin-w-du Jun 6, 2024
aca275d
removed the inline code
kevin-w-du Jun 6, 2024
321d15c
reorganized the script files
kevin-w-du Jun 6, 2024
a354578
reorganized the script files
kevin-w-du Jun 6, 2024
25e66bf
minor change
kevin-w-du Jun 6, 2024
402d486
added comments
kevin-w-du Jun 6, 2024
c590d8b
revised the manuals
kevin-w-du Jun 6, 2024
fe4b9a8
updated the manual
kevin-w-du Jun 6, 2024
5aaad3b
revised the manual
kevin-w-du Jun 6, 2024
53f3a29
resolve conflict
wonkr Jun 7, 2024
9c8fc4f
add .gitignore to include user_contract.bin
wonkr Jun 7, 2024
17569b7
added a missing file
kevin-w-du Jun 7, 2024
8722048
add .gitignore to include user_contract.bin
wonkr Jun 7, 2024
10856c1
added the missing .bin files
kevin-w-du Jun 7, 2024
ac1697e
fix minor issue not returing self
wonkr Jun 7, 2024
89649b9
add `isPostConfigCommand` option in `Node::appendStartCommand` method.
wonkr Jun 7, 2024
32a3aff
remove experiment phase lines
wonkr Jun 7, 2024
416464a
remove unused faucet method
wonkr Jun 7, 2024
7e14a12
added a common problem
kevin-w-du Jun 7, 2024
c995a84
added hostname
kevin-w-du Jun 9, 2024
3a7a9c4
fix some indent issue
kevin-w-du Jun 9, 2024
bf3b605
added an oracle example
kevin-w-du Jun 9, 2024
b509fc5
copied the library code to the service folder
kevin-w-du Jun 9, 2024
d3cb6c4
added hostnames
kevin-w-du Jun 9, 2024
19119e6
simplified the binding strategy
kevin-w-du Jun 9, 2024
b66878e
minor change of the binding strategy
kevin-w-du Jun 9, 2024
9508c84
updated the manual
kevin-w-du Jun 9, 2024
bee95c6
change - to _
wonkr Jun 10, 2024
39e6cd5
fix DistributedDocker init
wonkr Jun 10, 2024
735eafd
change - to _
wonkr Jun 10, 2024
87b3f5e
change base-component.bin to base_component.bin
wonkr Jun 10, 2024
40a87ad
rename B27_traffic_generator
wonkr Jun 10, 2024
d9c4909
rename base-component.bin to base_component.bin
wonkr Jun 10, 2024
1953750
rename base-internet.bin to base_internet.bin
wonkr Jun 10, 2024
bdc05ef
fix import module name
wonkr Jun 10, 2024
a1f94b9
rename bin file from - to _
wonkr Jun 10, 2024
7fcb7f1
rename bin file from - to _
wonkr Jun 10, 2024
a2da395
rename bin file from - to _
wonkr Jun 10, 2024
445c8f4
rename bin file from - to _
wonkr Jun 10, 2024
da6e999
rename bin file from - to _
wonkr Jun 10, 2024
a48e2f8
fix webservice not exist error
wonkr Jun 10, 2024
b133a30
Merge branch 'ethereum-improvement' of github.com:seed-labs/seed-emul…
wonkr Jun 10, 2024
766b222
rename script
wonkr Jun 10, 2024
478105a
fix error. EtcHosts already added
wonkr Jun 10, 2024
45c68cd
rename bin file from - to _
wonkr Jun 10, 2024
2fcce88
rename bin file from - to _
wonkr Jun 10, 2024
7c537b3
compile-test.py
wonkr Jul 22, 2024
c73fc9a
compile-test.py
wonkr Jul 22, 2024
1d9d407
compile-test.py
wonkr Jul 22, 2024
8b8789b
fix kubo web npm package install issue
wonkr Jul 24, 2024
4b685f5
fix kubo web npm package install issue
wonkr Jul 24, 2024
8e28597
update to ensure compatibility with the latest SCION update
tjohn327 Jul 25, 2024
098910b
update examples to set platform information
wonkr Jul 28, 2024
22fbe6d
remove comment
wonkr Jul 28, 2024
2acd3ad
add compile-test README.md
wonkr Jul 28, 2024
80c6f93
rename compile test
wonkr Jul 28, 2024
621f9ce
fix: solcx does not work in ARM platform
wonkr Jul 28, 2024
a202d7a
fix minor error
wonkr Jul 30, 2024
6839fd6
fix minor
wonkr Aug 1, 2024
493d271
Merge pull request #259 from seed-labs/ethereum-improvement
wonkr Aug 1, 2024
53d9c6f
Merge branch 'development' of github.com:seed-labs/seed-emulator into…
wonkr Aug 1, 2024
677bb7c
fix api name
wonkr Aug 1, 2024
2cdf332
fix path
wonkr Aug 1, 2024
0ab2ae4
rename class
wonkr Aug 6, 2024
c1ba818
rename class
wonkr Aug 6, 2024
7f0f758
update chainlink and ethUtility test scripts
wonkr Aug 6, 2024
8ec9f07
uncomment testcases
wonkr Aug 6, 2024
ac2afd3
update method argument name
wonkr Aug 7, 2024
f394e84
move genesis to experiment_test directory.
wonkr Aug 7, 2024
bb231d0
log test command
wonkr Aug 7, 2024
f8a1611
wait longer (from 10sec to 60sec) for beaconing
wonkr Aug 7, 2024
84a56c3
traffic generation improvement
wonkr Aug 11, 2024
229f770
Merge branch 'itsmahbub-traffic-generator-improvement-2' into develop…
wonkr Aug 11, 2024
af49286
Merge pull request #260 from seed-labs/development
wonkr Aug 11, 2024
bea2548
update interface info
wonkr Aug 11, 2024
95476e5
remove redundant files
wonkr Aug 11, 2024
231116c
Merge pull request #261 from seed-labs/development
wonkr Aug 11, 2024
1129072
Update __init__.py
wonkr Aug 12, 2024
dfee773
fix typing_extensions module error. remove unnecessary module:typing_…
wonkr Sep 28, 2024
c9fc33b
Merge pull request #262 from seed-labs/development
wonkr Sep 29, 2024
f57bbbd
fixed a small error in example A20
kevin-w-du Sep 29, 2024
64fdd5f
fix minor: add missing docker image tag.
wonkr Sep 30, 2024
8d99c83
Revert "fix minor: add missing docker image tag."
wonkr Sep 30, 2024
2c210b4
fix minor: add missing docker image tag.
wonkr Sep 30, 2024
d8d3169
cleanup: removed unnecessary semicolon
sammyhori Oct 1, 2024
aa7f568
cleanup: pythonise type conversions
sammyhori Oct 1, 2024
b3262e1
Merge remote-tracking branch 'upstream/master'
tjohn327 Nov 8, 2024
480fb76
added a new example for node customization
kevin-w-du Nov 18, 2024
cccdacb
added a new example
kevin-w-du Nov 20, 2024
9ee38cf
minor update
kevin-w-du Nov 22, 2024
f60413c
added a missing file
kevin-w-du Nov 23, 2024
03cb9e8
added a comment
kevin-w-du Nov 23, 2024
58a0095
fixed a small platform issue
kevin-w-du Dec 8, 2024
a45ef2d
added a note to A20
kevin-w-du Dec 8, 2024
23ee238
chore: remove redundant words
InventiveCoder Dec 10, 2024
424f746
Merge branch 'seed-labs:master' into master
lschulz Dec 23, 2024
fee3528
Merge pull request #266 from InventiveCoder/master
kevin-w-du Dec 23, 2024
b4796e8
Merge pull request #265 from netsys-lab/master
kevin-w-du Dec 23, 2024
b881c62
Merge pull request #263 from sammyhori/master
kevin-w-du Dec 23, 2024
991b2d9
update dependencies
amdfxlucas Mar 4, 2024
fb93d3d
parse the class label of docker containers
amdfxlucas Mar 4, 2024
f56dd9c
traceroute enpoints for overlay path drawing functionality
amdfxlucas Mar 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ client/frontend/node_modules
client/backend/node_modules
client/backend/bin
*.bin
output
output*
project-words.txt
.venv
**/.obsidian/**
test_result.txt
2 changes: 1 addition & 1 deletion Doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -585,7 +585,7 @@ INTERNAL_DOCS = NO
# filesystem is case sensitive (i.e. it supports files in the same directory
# whose names only differ in casing), the option must be set to YES to properly
# deal with such files in case they appear in the input. For filesystems that
# are not case sensitive the option should be be set to NO to properly deal with
# are not case sensitive the option should be set to NO to properly deal with
# output files written for symbols that only differ in casing, such as for two
# classes, one named CLASS and the other named Class, and to also support
# references to files without having to specify the exact matching casing. On
Expand Down
82 changes: 41 additions & 41 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,73 +14,73 @@ is a set of docker container folders/files. When these containers are built and
started, they form a small-size Internet. New building blocks are being added,
including Blockchain, Botnet, and many other useful elements of the Internet.

![The Web UI](docs/assets/web-ui.png)
![The Web UI](./docs/assets/web-ui.png)

## Table of Contents

- [Getting Started](#getting-started)
- [Documentation](#documentation)
- [User Manuals](#user-manuals)
- [Contributing](#contributing)
- [License](#license)


## Getting Started

### Preparation in Mainland China
### Install the necessary software

**Notice: This part is only useful for computers in Mainland China. If your computer is not in this area or you use some special network configuration, please skip this part.**
To run the emulator, you need to install `docker`, `docker-compose`,
and `python3`.

1. Add the pip proxy:

```bash
pip install --upgrade pip
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
```

2. Add the dockerhub proxy:
### Set up the project

vim the docker config file.
To run the emulator code, we can do one of the followings:

```bash
sudo vim /etc/docker/daemon.json
```
- Run `pip install -e file:.` inside the project's root directory. It will install the project ( file:. current path ) in editable mode. It creates a symlink of current folder to python's default search path.

add the following config.
```python
{
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn",
"https://dockerproxy.com",
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com",
"https://ccr.ccs.tencentyun.com"
]
}
```
- Add this folder to the `PYTHONPATH` environment variable. This can be done by running `source development.env`
inside the project's root directory.

restart docker
### Set up the proxy (not needed if you don't have an issue)

```bash
sudo systemctl daemon-reload
sudo systemctl restart docker
```
The emulator needs to fetch docker images from the Docker Hub.
If you are in Mainland China, you may not be able to directly get the
docker images. However, there are many docker hub proxies that
you can use. Please follow [these instructions](./docs/user_manual/dockerhub_proxy.md)
to set up the docker hub proxies. If you do not have such an issue,
please skip this step.


### Run Examples

We have provided many examples in the [examples/](./examples/) folder.
Detailed explanations are provided the README file in each example folder.
To run an example, do the following:

### Examples
1. Pick an example, for example, `A00-simple-as`.

To get started with the emulator, install docker, docker-compose, and python3. Then, take a look at the [examples/](./examples/) folder for examples. Detailed explanation is provided in the README file, as well as in the comments of the code. To run an example:
2. Build the emulation. For this example, go to `examples/A00-simple-as/`, and
run `python3 ./simple-as.py`. The container files will be created inside the
`output/` folder. For some examples, such as `B02-mini-internet-with-dns`,
they depend on other examples, so you need to run those examples first.

1. Pick an example, say `A00-simple-peering`.
2. Add `seedemu` to `PYTHONPATH`. This can be done by running `source development.env` under the project root directory.
3. Build the emulation. For this example, cd to `examples/A00-simple-peering/`, and run `python3 ./simple-peering.py`. The container files will be created inside the `output/` folder. For some examples, such as `B02-mini-internet-with-dns`, they depend on other examples, so you need to run those examples first. This is part of our component design.
4. Build and run the containers. First `cd output/`, then do `docker-compose build && docker-compose up`. The emulator will start running. Give it a minute or two (or longer if your emulator is large) to let the routers do their jobs.
5. Optionally, start the seedemu web client. Open a new terminal window, navigate to the project root directory, cd to `client/`, and run `docker-compose build && docker-compose up`. Then point your browser to http://127.0.0.1:8080/map.html, and you will see the entire emulator. Use the filter box if you want to see the packet flow.
3. Build and run the generated containers. First `cd output/`, then do `docker-compose
build && docker-compose up`. The emulator will start running. Give it a
minute or two (or longer if your emulator is large) to let the routers do
their jobs.

## Documentation
4. Some examples already include the visualization container (called Internet
Map). Point your browser to `http://127.0.0.1:8080/map.html`, and you will
see the visualization. More instructions on how to use the visualization app
is given in [this manual](./docs/user_manual/internet_map.md). If the map
is not included, you can open a new terminal window, navigate to the project
root directory, cd to `client/`, and run `docker-compose build &&
docker-compose up`. This will bring up the Internet Map container.

Documentation is in progress inside the [docs/](./docs/) folder.

## User Manuals

User manuals are provided inside the [docs/user_manual/](./docs/user_manual) folder.

## Contributing

Expand Down
10 changes: 9 additions & 1 deletion client/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,13 +1,21 @@
FROM node:14
FROM node:20
COPY start.sh /
WORKDIR /usr/src/app
COPY . .
WORKDIR /usr/src/app/frontend
RUN npm install
RUN npm install -D webpack-cli
RUN ./node_modules/.bin/webpack --mode production

WORKDIR /usr/src/app/common
RUN npm install
RUN npm install ip-num
RUN npm install -D typescript
RUN ./node_modules/.bin/tsc

WORKDIR /usr/src/app/backend
RUN npm install
RUN npm install ip-num
RUN npm install -D typescript
RUN ./node_modules/.bin/tsc
ENTRYPOINT ["sh", "/start.sh"]
Loading