diff --git a/docker-compose.yml b/docker-compose.yml deleted file mode 100644 index 77172bb9..00000000 --- a/docker-compose.yml +++ /dev/null @@ -1,74 +0,0 @@ -version: '3.7' -services: - db: - image: postgres:11 - environment: - POSTGRES_USER: root - POSTGRES_HOST_AUTH_METHOD: trust - init-db: - image: jjs:latest - command: - - "jjs-setup" - - "--install-dir=/opt/jjs" - - "--data-dir=/var/lib/jjs" - - "--setup-config" - - "--sample-contest" - - "--db-url=postgres://db:5432/jjs" - - "--toolchains" - - "--touch=/var/lib/jjs/done.txt" - depends_on: - - db - environment: - RUST_LOG: debug - JJS_WAIT: tcp://db:5432 - volumes: - - type: 'volume' - source: jjs_data - target: /var/lib/jjs - security_opt: - - seccomp=unconfined - apiserver: - image: jjs:latest - environment: - DATABASE_URL: postgres://db:5432/jjs - JJS_SYSROOT: /var/lib/jjs - JJS_PATH: /opt/jjs - JJS_WAIT: file:///var/lib/jjs/done.txt - JJS_HOST: "0.0.0.0" - RUST_LOG: info,apiserver=debug,util=debug,apiserver_engine=debug - JJS_SELF_ADDR: apiserver - command: - - jjs-apiserver - depends_on: - - db - - init-db - volumes: - - type: 'volume' - source: jjs_data - target: /var/lib/jjs - ports: - - "1779:1779" - invoker: - image: jjs:latest - privileged: true - command: - - /bin/jjs-invoker - environment: - DATABASE_URL: postgres://db:5432/jjs - JJS_SYSROOT: /var/lib/jjs - JJS_PATH: /opt/jjs - JJS_WAIT: file:///var/lib/jjs/done.txt - RUST_LOG: info,invoker=debug,util=debug,svaluer=debug - RUST_BACKTRACE: full - RUST_LIB_BACKTRACE: 1 - command: - - jjs-invoker - depends_on: - - db - - init-db - volumes: - - type: 'volume' - source: jjs_data - target: /var/lib/jjs -volumes: - jjs_data: diff --git a/docker-compose/README.md b/docker-compose/README.md new file mode 100644 index 00000000..e52b3bf1 --- /dev/null +++ b/docker-compose/README.md @@ -0,0 +1,6 @@ +# WARNING + +This file may be out of date, because it isn't checked during CI. + + +PRs are welcome. diff --git a/docker-compose/docker-compose.yml b/docker-compose/docker-compose.yml new file mode 100644 index 00000000..cf5367a7 --- /dev/null +++ b/docker-compose/docker-compose.yml @@ -0,0 +1,44 @@ +version: "3.8" +x-volume: + &data-volume + type: 'volume' + source: jjs_data + target: /var/lib/jjs +services: + db: + image: mongo + init-data: + image: debian:stable-slim + entrypoint: /bin/sh -c + command: > + "/bin/mkdir /var/lib/jjs/etc + && /bin/cp /configs/invoker.yaml /var/lib/jjs/etc/" + volumes: + - *data-volume + - ./compose-config:/configs:ro + apiserver: + image: apiserver + environment: + MONGODB_CONNECTION_STRING: mongodb://db:27017/jjs + depends_on: + - db + ports: + - "1779:1779" + invoker: + image: invoker + privileged: true + environment: + JJS_DATA: /var/lib/jjs + JJS_AUTH_DATA_INLINE: "{\"endpoint\": \"http://apiserver:1779/\", \"auth\": {\"byToken\": {\"token\": \"Dev::root\"}}}" + RUST_LOG: info,invoker=debug,util=debug,svaluer=debug + RUST_BACKTRACE: full + RUST_LIB_BACKTRACE: 1 + depends_on: + - db + - init-data + ports: + - "1789:1789" + volumes: + - *data-volume +volumes: + jjs_data: diff --git a/docker-compose/invoker.yaml b/docker-compose/invoker.yaml new file mode 100644 index 00000000..5e074db8 --- /dev/null +++ b/docker-compose/invoker.yaml @@ -0,0 +1,3 @@ +workers: 4 +problems: + mongodb: mongodb://db:27017/jjs