diff options
| -rw-r--r-- | Dockerfile | 29 | ||||
| -rwxr-xr-x | createUserInDocker.sh | 2 | ||||
| -rw-r--r-- | docker-compose.yml | 11 | ||||
| -rw-r--r-- | itter.service | 4 | ||||
| -rw-r--r-- | makefile | 14 | ||||
| -rwxr-xr-x | run.sh | 2 | 
6 files changed, 60 insertions, 2 deletions
| diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..3161015 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,29 @@ +FROM debian:buster-slim AS build +RUN apt-get update && apt-get -y --no-install-recommends install \ +      build-essential \ + && rm -rf /var/lib/apt/lists/* +WORKDIR /build +ADD https://code.call-cc.org/releases/5.2.0/chicken-5.2.0.tar.gz chicken.tar.gz +RUN mkdir chicken && tar -C chicken --strip-components 1 -xf chicken.tar.gz +WORKDIR /build/chicken +RUN make PLATFORM=linux +RUN make PLATFORM=linux install + +FROM debian:buster-slim +RUN apt-get update && apt-get -y --no-install-recommends install \ +      gcc libc-dev sqlite3 libsqlite3-dev \ + && rm -rf /var/lib/apt/lists/* +COPY --from=build /usr/local/ /usr/local/ +RUN chicken-install crypt sqlite3 multipart-form-data \ +    spiffy-request-vars html-parser spiffy intarweb sql-null srfi-69 \ +    srfi-1 srfi-4 uri-common +COPY ./main.scm . +COPY ./add-user.scm . +COPY ./favicon.ico . +COPY ./style.css . +COPY ./createUserInDocker.sh . +RUN mkdir -p ./build +RUN csc -static ./main.scm -L -lsqlite3 -L -lcrypt +RUN csc -static ./add-user.scm -L -lcrypt -L -lsqlite3 +ENV DB_FILE='./54itter.db' +CMD ["./main"] diff --git a/createUserInDocker.sh b/createUserInDocker.sh new file mode 100755 index 0000000..e531406 --- /dev/null +++ b/createUserInDocker.sh @@ -0,0 +1,2 @@ +#!/bin/sh +docker exec -it itter /add-user $1 $2 diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..6145155 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,11 @@ +version: '3.8' + +services: +  app: +    container_name: itter +    build: +      context: . +      dockerfile: Dockerfile +    ports: +      - "7080:7080" +    restart: unless-stopped diff --git a/itter.service b/itter.service index dd7713d..82a72ac 100644 --- a/itter.service +++ b/itter.service @@ -6,8 +6,8 @@ StartLimitBurst=4  [Service]  User=root -WorkingDirectory=/root -ExecStart=/root/54itter +WorkingDirectory=/root/54itter +ExecStart=/root/54itter/run.sh  Restart=on-failure  RestartSec=1  SuccessExitStatus=3 4 @@ -30,3 +30,17 @@ clean:  	rm -r build/  status:  	ssh dotemgo-tasks_root 'systemctl status itter.service' + +deploy: +	cp ./style.css ./build/style.css +	cp ./favicon_io/favicon.ico ./build/favicon.ico +	cp ./Dockerfile ./build +	cp ./docker-compose.yml ./build +	cp ./main.scm ./build +	cp ./add-user.scm ./build +	cp ./run.sh ./build/run.sh.new +	cp ./createUserInDocker.sh ./build +	rsync --recursive --delete ./build/ dotemgo-tasks_root:/root/54itter/ +	ssh dotemgo-tasks_root 'systemctl stop itter.service \ +		&& mv /root/54itter/run.sh.new /root/54itter/run.sh \ +		&& systemctl start itter.service' @@ -0,0 +1,2 @@ +#!/bin/sh +docker-compose build && docker-compose up | 
