Add Dockerfile, docker-compose.yml, and docker.env
Omnibot can be run using Docker and docker-compose using the provided files. Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
This commit is contained in:
26
Dockerfile
Normal file
26
Dockerfile
Normal file
@@ -0,0 +1,26 @@
|
||||
FROM elixir:1.10
|
||||
|
||||
# XXX #
|
||||
# Rust is required because of the "meeseeks" dependency because it uses a Rust
|
||||
# library for some reason. I'll start looking for alternatives so we don't have
|
||||
# to worry about installing it in the future because that is not a small
|
||||
# dependency.
|
||||
|
||||
# It's impossible to pass a command line parameter (-y) to a shell script being
|
||||
# read through stdin, so this line downloads, runs, and removes that script.
|
||||
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > /tmp/rustup.sh && \
|
||||
chmod +x /tmp/rustup.sh && \
|
||||
/tmp/rustup.sh -y && \
|
||||
rm /tmp/rustup.sh
|
||||
|
||||
# Also set the PATH to include /root/.cargo/bin, where Rust was installed to
|
||||
ENV PATH="/root/.cargo/bin:$PATH"
|
||||
|
||||
# END XXX #
|
||||
|
||||
RUN mkdir /app
|
||||
WORKDIR /app
|
||||
|
||||
RUN mix local.hex --force
|
||||
|
||||
CMD mix run --no-halt
|
||||
13
docker-compose.yml
Normal file
13
docker-compose.yml
Normal file
@@ -0,0 +1,13 @@
|
||||
version: "3.8"
|
||||
services:
|
||||
omnibot:
|
||||
#image: "elixir:1.10"
|
||||
build: .
|
||||
#environment:
|
||||
#MIX_ENV: prod
|
||||
env_file: docker.env
|
||||
volumes:
|
||||
- ".:/app"
|
||||
working_dir: "/app"
|
||||
restart: always
|
||||
#entrypoint: "mix local.hex --force; mix run --no-halt"
|
||||
2
docker.env
Normal file
2
docker.env
Normal file
@@ -0,0 +1,2 @@
|
||||
MIX_ENV=prod
|
||||
OMNIBOT_CONFIG="omnibot.exs"
|
||||
Reference in New Issue
Block a user