Spaces:
Sleeping
Sleeping
| FROM elixir:1.13.4-slim AS builderish | |
| WORKDIR /app | |
| COPY mix.exs . | |
| COPY mix.lock . | |
| COPY .formatter.exs . | |
| RUN mix local.hex --force | |
| RUN mix local.rebar --force | |
| RUN mix deps.get | |
| COPY lib/ ./lib/ | |
| COPY config/ ./config/ | |
| ENV MIX_ENV=prod | |
| RUN mix release | |
| FROM elixir:1.13.4-slim | |
| RUN apt-get update && apt-get install -y supervisor adduser sudo curl gpg lsb-release && apt-get clean all | |
| RUN useradd -m rabil && echo "rabil:rabil" | chpasswd && adduser rabil sudo | |
| RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers | |
| RUN curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg | |
| RUN sudo chmod 644 /usr/share/keyrings/redis-archive-keyring.gpg | |
| RUN echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list | |
| RUN sudo apt-get update | |
| RUN sudo apt-get install -y redis-stack-server | |
| WORKDIR /app | |
| COPY --from=builderish /app/_build/prod/rel/prod/ ./_build/prod/rel/prod/ | |
| USER rabil | |
| ARG SRH_MODE | |
| ENV SRH_MODE=${SRH_MODE} | |
| ARG SRH_TOKEN | |
| ENV SRH_TOKEN=${SRH_TOKEN} | |
| ARG SRH_CONNECTION_STRING | |
| ENV SRH_CONNECTION_STRING=${SRH_CONNECTION_STRING} | |
| ENV SRH_PORT=7860 | |
| EXPOSE 7860 | |
| ENV MIX_ENV=prod | |
| COPY docker/supervisor.conf /etc/supervisor/conf.d/supervisor.conf | |
| COPY docker/redis.conf /etc/redis/redis.conf | |
| RUN sudo mkdir -p /etc/lib/redis | |
| RUN sudo chmod -R 777 /etc/redis/ | |
| RUN sudo chmod -R 777 /app | |
| RUN sudo chmod -R 777 /etc/lib/redis | |
| CMD ["supervisord", "-c", "/etc/supervisor/conf.d/supervisor.conf"] | |