update to antos version 1.2.0
This commit is contained in:
parent
a52bca082f
commit
c7812b1c97
25
Dockerfile
25
Dockerfile
@ -1,12 +1,12 @@
|
||||
FROM alpine AS build-env
|
||||
RUN apk add build-base make sqlite-dev zlib-dev readline-dev nodejs npm
|
||||
FROM alpine:3.9 AS build-env
|
||||
RUN apk add build-base make sqlite-dev zlib-dev readline-dev nodejs npm openssl-dev
|
||||
COPY download /download
|
||||
RUN cd /download/antd-1.0.6b && ./configure --prefix=/usr/ --enable-debug=yes && make && make install
|
||||
RUN cd /download/lua-0.5.2b && ./configure --prefix=/opt/www --enable-debug=yes && make && make install
|
||||
RUN cd /download/wterm-1.0.0b && ./configure --prefix=/opt/www --enable-debug=yes && make && make install
|
||||
RUN cd /download/antd-1.0.6b && ./configure --prefix=/usr/ && make && make install
|
||||
RUN cd /download/lua-0.5.2b && ./configure --prefix=/opt/www && make && make install
|
||||
RUN cd /download/wterm-1.0.0b && ./configure --prefix=/opt/www && make && make install
|
||||
|
||||
RUN cd /download/tunnel-0.1.0b && ./configure --prefix=/opt/www --enable-debug=yes && make && make install
|
||||
RUN cd /download/antd-publishers-0.1.0a && ./configure --prefix=/opt/www --enable-debug=yes && make && make install
|
||||
RUN cd /download/tunnel-0.1.0b && ./configure --prefix=/opt/www && make && make install
|
||||
RUN cd /download/antd-publishers-0.1.0a && ./configure --prefix=/opt/www && make && make install
|
||||
|
||||
|
||||
RUN mkdir -p /opt/www/htdocs
|
||||
@ -14,13 +14,12 @@ RUN cd /download/antd-web-apps && BUILDDIR=/opt/www/htdocs PROJS=os make
|
||||
RUN rm /opt/www/htdocs/index.ls
|
||||
RUN cd /download/antos && npm install terser uglifycss typescript -g && npm install @types/jquery && BUILDDIR=/opt/www/htdocs/os make release
|
||||
|
||||
FROM alpine
|
||||
RUN apk add --no-cache sqlite-dev zlib readline-dev
|
||||
FROM alpine:3.9
|
||||
RUN apk add --no-cache sqlite-dev zlib readline openssl curl
|
||||
|
||||
COPY antd-config.ini /etc/antd-config.ini
|
||||
COPY start.sh /start.sh
|
||||
COPY --from=build-env /usr/bin/antd /usr/bin/antd
|
||||
COPY --from=build-env /usr/lib/libantd* /usr/lib/
|
||||
COPY --from=build-env /opt/www /opt/www
|
||||
RUN adduser --home /home/demo --disabled-password --gecos "" demo
|
||||
RUN echo -e "demo\ndemo" | passwd demo
|
||||
ENTRYPOINT LD_PRELOAD=/opt/www/lib/lua/core.so /usr/bin/antd /etc/antd-config.ini
|
||||
ENTRYPOINT /start.sh
|
||||
# ENTRYPOINT /bin/sh
|
||||
|
69
README.md
69
README.md
@ -22,18 +22,79 @@ sudo docker load < antosaio.tar
|
||||
The image can be run in a container using
|
||||
|
||||
```sh
|
||||
sudo docker run -p 8080:80 -it antosaio
|
||||
|
||||
# app dir that will be mounted to the container
|
||||
# the server configuration is stored in this location
|
||||
mkdir -p /tmp/app/home
|
||||
|
||||
# create the server configuration
|
||||
cat << EOF > /tmp/app/antd_config.ini
|
||||
[SERVER]
|
||||
plugins=/opt/www/lib/
|
||||
plugins_ext=.so
|
||||
database=/opt/www/database/
|
||||
tmpdir=/opt/www/tmp/
|
||||
maxcon=200
|
||||
backlog=5000
|
||||
workers = 4
|
||||
max_upload_size = 10000000
|
||||
gzip_enable = 1
|
||||
gzip_types = text\/.*,.*\/css,.*\/json,.*\/javascript
|
||||
|
||||
[PORT:80]
|
||||
htdocs=/opt/www/htdocs
|
||||
ssl.enable=0
|
||||
^/(.*)$ = /os/router.lua?r=<1>&<query>
|
||||
|
||||
[AUTOSTART]
|
||||
plugin = tunnel
|
||||
|
||||
[MIMES]
|
||||
image/bmp=bmp
|
||||
image/jpeg=jpg,jpeg
|
||||
text/css=css
|
||||
text/markdown=md
|
||||
text/csv=csv
|
||||
application/pdf=pdf
|
||||
image/gif=gif
|
||||
text/html=html,htm,chtml
|
||||
application/json=json
|
||||
application/javascript=js
|
||||
image/png=png
|
||||
image/x-portable-pixmap=ppm
|
||||
application/x-rar-compressed=rar
|
||||
image/tiff=tiff
|
||||
application/x-tar=tar
|
||||
text/plain=txt
|
||||
application/x-font-ttf=ttf
|
||||
application/xhtml+xml=xhtml
|
||||
application/xml=xml
|
||||
application/zip=zip
|
||||
image/svg+xml=svg
|
||||
application/vnd.ms-fontobject=eot
|
||||
application/x-font-woff=woff,woff2
|
||||
application/x-font-otf=otf
|
||||
audio/mpeg=mp3,mpeg
|
||||
|
||||
[FILEHANDLER]
|
||||
lua = lua
|
||||
EOF
|
||||
|
||||
docker run \
|
||||
-p 8080:80 \
|
||||
--mount type=bind,source=/tmp/app,target=/app \
|
||||
-e ANTOS_USER=demo \
|
||||
-e ANTOS_PASSWORD=demo \
|
||||
-it antosaio
|
||||
```
|
||||
|
||||
Here we map the host port 8080 to the port 80 on the `antosaio` container.
|
||||
From the host browser, the VDE can be accessed via
|
||||
|
||||
```
|
||||
http://localhost:8080/os/
|
||||
http://localhost:8080
|
||||
```
|
||||
|
||||
Note that: the `/` at the end of the URL is important.
|
||||
|
||||
### Build your own image
|
||||
It is really simple to build your own AntOS docker image:
|
||||
|
||||
|
@ -1,78 +0,0 @@
|
||||
[SERVER]
|
||||
; plugin directory
|
||||
plugins=/opt/www/lib/
|
||||
; plugin extension
|
||||
plugins_ext=.so
|
||||
; SQLITE database path
|
||||
database=/opt/www/database/
|
||||
; tmp dir
|
||||
tmpdir=/opt/www/tmp/
|
||||
; max concurent connection
|
||||
maxcon=200
|
||||
; server backlocg
|
||||
backlog=5000
|
||||
; number of workers
|
||||
workers = 4
|
||||
; max upload file size in bytes
|
||||
max_upload_size = 10000000
|
||||
|
||||
; enable compression
|
||||
gzip_enable = 1
|
||||
gzip_types = text\/.*,.*\/css,.*\/json,.*\/javascript
|
||||
|
||||
; a configuration each port
|
||||
|
||||
|
||||
[PORT:80]
|
||||
htdocs=/opt/www/htdocs
|
||||
; enable or disable SSL
|
||||
ssl.enable=0
|
||||
^\/os\/+(.*)$ = /os/router.lua?r=<1>&<query>
|
||||
|
||||
|
||||
|
||||
; This enable some plugins to be initialised at server startup
|
||||
[AUTOSTART]
|
||||
plugin = tunnel
|
||||
; to start a plugin at server statup use:
|
||||
;plugin = plugin_name_1
|
||||
;plugin = plugin_name_2, etc
|
||||
|
||||
|
||||
[MIMES]
|
||||
image/bmp=bmp
|
||||
image/jpeg=jpg,jpeg
|
||||
text/css=css
|
||||
text/markdown=md
|
||||
text/csv=csv
|
||||
application/pdf=pdf
|
||||
image/gif=gif
|
||||
text/html=html,htm,chtml
|
||||
application/json=json
|
||||
application/javascript=js
|
||||
image/png=png
|
||||
image/x-portable-pixmap=ppm
|
||||
application/x-rar-compressed=rar
|
||||
image/tiff=tiff
|
||||
application/x-tar=tar
|
||||
text/plain=txt
|
||||
application/x-font-ttf=ttf
|
||||
application/xhtml+xml=xhtml
|
||||
application/xml=xml
|
||||
application/zip=zip
|
||||
image/svg+xml=svg
|
||||
application/vnd.ms-fontobject=eot
|
||||
application/x-font-woff=woff,woff2
|
||||
application/x-font-otf=otf
|
||||
audio/mpeg=mp3,mpeg
|
||||
|
||||
[FILEHANDLER]
|
||||
; specify a plugin for handling
|
||||
; a file type
|
||||
; lua page script
|
||||
ls = lua
|
||||
; pure lua script
|
||||
lua = lua
|
||||
; php and o ther scripting languages can be
|
||||
; handled by the cgi plugin
|
||||
; php = cgi
|
64
bake.sh
64
bake.sh
@ -1,44 +1,38 @@
|
||||
#! /bin/bash
|
||||
|
||||
if [ -d "download" ]; then
|
||||
rm -rf download
|
||||
if [ ! -d "download" ]; then
|
||||
mkdir download
|
||||
cd download || (echo "Unable to change directory" && exit 1)
|
||||
|
||||
wget https://github.com/lxsang/ant-http/raw/master/dist/antd-1.0.6b.tar.gz
|
||||
tar xvzf antd-1.0.6b.tar.gz
|
||||
rm antd-1.0.6b.tar.gz
|
||||
|
||||
wget https://github.com/lxsang/antd-lua-plugin/raw/master/dist/lua-0.5.2b.tar.gz
|
||||
tar xvzf lua-0.5.2b.tar.gz
|
||||
rm lua-0.5.2b.tar.gz
|
||||
|
||||
wget https://github.com/lxsang/antd-wterm-plugin/raw/master/dist/wterm-1.0.0b.tar.gz
|
||||
tar xvzf wterm-1.0.0b.tar.gz
|
||||
rm wterm-1.0.0b.tar.gz
|
||||
|
||||
wget https://github.com/lxsang/antd-tunnel-plugin/raw/master/dist/tunnel-0.1.0b.tar.gz
|
||||
tar xvzf tunnel-0.1.0b.tar.gz
|
||||
rm tunnel-0.1.0b.tar.gz
|
||||
|
||||
wget https://github.com/lxsang/antd-tunnel-publishers/raw/master/dist/antd-publishers-0.1.0a.tar.gz
|
||||
tar xvzf antd-publishers-0.1.0a.tar.gz
|
||||
rm antd-publishers-0.1.0a.tar.gz
|
||||
|
||||
git clone --depth 1 https://github.com/lxsang/antd-web-apps
|
||||
git clone https://github.com/lxsang/antos
|
||||
cd antos && git checkout next-1.2.0 && cd ..
|
||||
cd ../
|
||||
|
||||
fi
|
||||
|
||||
mkdir download
|
||||
cd download || (echo "Unable to change directory" && exit 1)
|
||||
|
||||
wget https://github.com/lxsang/ant-http/raw/master/dist/antd-1.0.6b.tar.gz
|
||||
tar xvzf antd-1.0.6b.tar.gz
|
||||
rm antd-1.0.6b.tar.gz
|
||||
|
||||
wget https://github.com/lxsang/antd-lua-plugin/raw/master/dist/lua-0.5.2b.tar.gz
|
||||
tar xvzf lua-0.5.2b.tar.gz
|
||||
rm lua-0.5.2b.tar.gz
|
||||
|
||||
wget https://github.com/lxsang/antd-wterm-plugin/raw/master/dist/wterm-1.0.0b.tar.gz
|
||||
tar xvzf wterm-1.0.0b.tar.gz
|
||||
rm wterm-1.0.0b.tar.gz
|
||||
|
||||
wget https://github.com/lxsang/antd-tunnel-plugin/raw/master/dist/tunnel-0.1.0b.tar.gz
|
||||
tar xvzf tunnel-0.1.0b.tar.gz
|
||||
rm tunnel-0.1.0b.tar.gz
|
||||
|
||||
wget https://github.com/lxsang/antd-tunnel-publishers/raw/master/dist/antd-publishers-0.1.0a.tar.gz
|
||||
tar xvzf antd-publishers-0.1.0a.tar.gz
|
||||
rm antd-publishers-0.1.0a.tar.gz
|
||||
|
||||
git clone --depth 1 https://github.com/lxsang/antd-web-apps
|
||||
git clone --depth 1 https://github.com/lxsang/antos
|
||||
|
||||
cd ../
|
||||
|
||||
|
||||
docker build -t antosaio .
|
||||
|
||||
if [ -d "download" ]; then
|
||||
rm -rf download
|
||||
fi
|
||||
|
||||
mkdir -p dist
|
||||
docker save antosaio > dist/antosaio.tar
|
||||
# sudo docker run -p 8080:80 -it antosaoi /bin/sh
|
||||
|
BIN
dist/antosaio.tar
vendored
BIN
dist/antosaio.tar
vendored
Binary file not shown.
7
start.sh
Executable file
7
start.sh
Executable file
@ -0,0 +1,7 @@
|
||||
#! /bin/sh
|
||||
ln -sf /app/home "/home/$ANTOS_USER"
|
||||
adduser --home "/home/$ANTOS_USER" --disabled-password --gecos "" "$ANTOS_USER"
|
||||
echo -e "$ANTOS_PASSWORD\n$ANTOS_PASSWORD" | passwd "$ANTOS_USER"
|
||||
# start antd-tunnel service
|
||||
[ -f /app/runner.ini ] && /opt/www/bin/runner /app/runner.ini &
|
||||
/usr/bin/antd /app/antd-config.ini
|
Loading…
Reference in New Issue
Block a user