From b9fd8f916b3dc71ecff0fb0aef00fee384e898f5 Mon Sep 17 00:00:00 2001 From: Xu Jun <693788454@qq.com> Date: Tue, 7 Dec 2021 20:19:23 +0800 Subject: [PATCH] update IoT cloud demo (#876) * update IoT APP store demo * update IoT app store apps * update IoT cloud demo document * [Cloud demo] mount app store between two dockers * [Cloud demo] update restart policy * [Cloud demo] update help page * [Cloud demo] update online demo address --- test-tools/IoT-APP-Store-Demo/README.md | 46 ++++++++++++------ .../IoT-APP-Store-Demo/docker-compose.yml | 22 +++++++++ .../IoT-APP-Store-Demo/wasm_django/Dockerfile | 9 ++++ .../wasm_django/devices/templates/help.html | 6 +-- .../wasm_django/server/Dockerfile | 6 +++ .../wasm_django/static/upload/connection.wasm | Bin 7894 -> 6379 bytes .../static/upload/event_publisher.wasm | Bin 6817 -> 5074 bytes .../static/upload/event_subscriber.wasm | Bin 5273 -> 3917 bytes .../static/upload/request_handler.wasm | Bin 7995 -> 6702 bytes .../static/upload/request_sender.wasm | Bin 6019 -> 5212 bytes .../wasm_django/static/upload/sensor.wasm | Bin 5356 -> 4027 bytes .../wasm_django/static/upload/simple | Bin 1066464 -> 368240 bytes .../static/upload/sys/connection.wasm | Bin 7894 -> 6379 bytes .../static/upload/sys/event_publisher.wasm | Bin 6817 -> 5074 bytes .../static/upload/sys/event_subscriber.wasm | Bin 5273 -> 3917 bytes .../static/upload/sys/request_handler.wasm | Bin 7995 -> 6702 bytes .../static/upload/sys/request_sender.wasm | Bin 6019 -> 5212 bytes .../wasm_django/static/upload/sys/timer.wasm | Bin 4150 -> 2468 bytes .../wasm_django/static/upload/timer.wasm | Bin 4150 -> 2468 bytes .../static/upload/wasm_runtime_wgl | Bin 1066908 -> 591680 bytes 20 files changed, 70 insertions(+), 19 deletions(-) create mode 100644 test-tools/IoT-APP-Store-Demo/docker-compose.yml create mode 100644 test-tools/IoT-APP-Store-Demo/wasm_django/Dockerfile create mode 100644 test-tools/IoT-APP-Store-Demo/wasm_django/server/Dockerfile diff --git a/test-tools/IoT-APP-Store-Demo/README.md b/test-tools/IoT-APP-Store-Demo/README.md index 06d17a65..266255c0 100644 --- a/test-tools/IoT-APP-Store-Demo/README.md +++ b/test-tools/IoT-APP-Store-Demo/README.md @@ -1,36 +1,50 @@ # IoT Application Store Wasm application management portal for WAMR -# Requirement -Install django with pip3 -``` -pip3 install django -``` +## Start the server -# Run -1. Start wasm server +### Using docker +1. install docker and docker-compose + ``` bash + sudo apt install docker.io docker-compose ``` + +2. start + ``` bash + docker-compose up + ``` +### Using commands +> Note: must use python3.5. If you don't have python3.5 on your machine, had better using docker +1. install the required package + ``` bash + pip3 install django + ``` + +2. Start device server + ``` bash cd wasm_django/server python3 wasm_server.py ``` -2. Start IoT application management web portal - ``` +3. Start IoT application management web portal + ``` bash cd wasm_django python3 manage.py runserver 0.0.0.0:80 ``` -3. Download WAMR runtime from [help](http://localhost/help/) page - > NOTE: You need to start web server according to *step 2* before accessing this link! +## Start the runtime +1. Download WAMR runtime from [help](http://localhost/help/) page + > NOTE: You need to start the server before accessing this link! -4. Start a WAMR runtime from localhost - ``` +2. Start a WAMR runtime from localhost + ``` bash + chmod +x simple ./simple ``` or from other computers - ``` + ``` bash ./simple -a [your.server.ip.address] ``` -# Online demo - http://39.106.110.7/ +## Online demo + http://82.156.57.236/ diff --git a/test-tools/IoT-APP-Store-Demo/docker-compose.yml b/test-tools/IoT-APP-Store-Demo/docker-compose.yml new file mode 100644 index 00000000..331d064c --- /dev/null +++ b/test-tools/IoT-APP-Store-Demo/docker-compose.yml @@ -0,0 +1,22 @@ +version: '2.0' + +services: + web_portal: + build: ./wasm_django + network_mode: "host" + depends_on: + - 'device_server' + restart: always + volumes: + - store:/app/static/upload/ + device_server: + build: + context: ./wasm_django + dockerfile: ./server/Dockerfile + network_mode: "host" + restart: always + volumes: + - store:/app/static/upload/ + +volumes: + store: \ No newline at end of file diff --git a/test-tools/IoT-APP-Store-Demo/wasm_django/Dockerfile b/test-tools/IoT-APP-Store-Demo/wasm_django/Dockerfile new file mode 100644 index 00000000..18ca41dc --- /dev/null +++ b/test-tools/IoT-APP-Store-Demo/wasm_django/Dockerfile @@ -0,0 +1,9 @@ +FROM python:3.5 + +WORKDIR /app +ADD . /app + +RUN pip install django + +ENTRYPOINT ["python", "manage.py", "runserver", "0.0.0.0:80"] + diff --git a/test-tools/IoT-APP-Store-Demo/wasm_django/devices/templates/help.html b/test-tools/IoT-APP-Store-Demo/wasm_django/devices/templates/help.html index b36279d4..9e9d63c9 100755 --- a/test-tools/IoT-APP-Store-Demo/wasm_django/devices/templates/help.html +++ b/test-tools/IoT-APP-Store-Demo/wasm_django/devices/templates/help.html @@ -32,11 +32,11 @@ How to use?
- 1. Download a simple runtime (build for ubuntu 16.04 64 bits, other platforms please build + 1. Download a simple runtime (build for ubuntu 20.04 64 bits, other platforms please build from the source code)
- 2. In the terminal: cd ~/Download && ./simple -a 39.106.110.7
+ 2. In the terminal: cd ~/Download && ./simple -a 82.156.57.236
For more details please refer to this guide
-cd ~/Download && ./wasm_runtime_wgl -a 39.106.110.7
cd ~/Download && ./wasm_runtime_wgl -a 82.156.57.236
diff --git a/test-tools/IoT-APP-Store-Demo/wasm_django/server/Dockerfile b/test-tools/IoT-APP-Store-Demo/wasm_django/server/Dockerfile
new file mode 100644
index 00000000..a60caad1
--- /dev/null
+++ b/test-tools/IoT-APP-Store-Demo/wasm_django/server/Dockerfile
@@ -0,0 +1,6 @@
+FROM python:3.5
+
+WORKDIR /app
+ADD server/wasm_server.py /app/server/
+
+ENTRYPOINT ["python", "server/wasm_server.py"]
diff --git a/test-tools/IoT-APP-Store-Demo/wasm_django/static/upload/connection.wasm b/test-tools/IoT-APP-Store-Demo/wasm_django/static/upload/connection.wasm
index ba4dab23f7b6e22ba6041c4fa25fc60503d98ff7..2a2e79dc72c43d82914ca308f7bb1e90243a33be 100644
GIT binary patch
literal 6379
zcmb7IOKe R?IITg5ioTnS8R8
zRczP7x?2MRV6ZJ1INjjKh6R)wULXcI8vdg6v6I}Gd(8i_q%SRT0r2seSB1WJ|M7uT
z2p99T;x0Ac_W`zT^W)ule$2w=ImxELj7P=1e
zjojIX!`7()67B>DH#p`{`RfLgY`h9w6Vmqut`6x3`AG08T$VRc3BN5Y5G+70>APF18nJG6V@u>_(szO;%w-f=i>#`lpGisOwg`?g0WNrn|2uj{}*t6@N
z<|2|fay^8_!WV>?$lW=Pnm}M{7YGDvaR~UpxV#4SDbZ>8WGsSXyMJ2L61%v?TQT1Y
z
-Ldq-K{Yb>MgUL7Q+7iUV`A+EKx^PWp@rBb5a4
zxYG*Mksr4ELA}V;$puEW;Hrfk!y(hi4M;?2@OQHDXEV
zrV5N#E_31jKQ7b)29i^ARRSdHL`#2F>ZqTbC#G;A&xXjev@1Lv)2l_|!~nnyk0A9j
zpaIcU#u=*^vjsr67Tj$l)~x7aqhS@j!==aw*grBtGKnPP2Y*NpoWf$Ja?BPk0#Dn9
z9>}81Q8om_d$7fkOlLyl1G2yg-Y><;B1{W06jTEe`YFcI&s}Ozi@MTLZarEeo`tzv
z58ddoA{Ld<9hWPA=@>EFl}5WHNkv?SJfH}MY6wX@nvrkK_7X|vOiHVsfWH%!h(r{9
zt^dN5R@B4W{3H`BL*0zM#1GdHZWe0j4&)QKA9XcR;hK@BrQIKZGO1<8Pd@s{yOzaJ
zq-)d*CH0IHs#&h{d7Gc%c7vRrpdfmi6lO)(MUP4@FaougnHCXuN&v)Unk7f`
ni6U5D-~!kasn@=j@VI6a=I;xL+9ug27~>WdA<-|FLO;Ss*$hZV9NrLSyoVW7;l
zggO{!l~5H~nC79rK2Qf?46OH#p5U{;RO(SA1&}s36JjM?b{{c
z`GUSj!ha-iQ^F&HPoIQe_yTVirDJG2o-X*fB|M7#75aH3{A@w*m2i6