imseldrith commited on
Commit
2627127
·
1 Parent(s): f379897

Create Docker

Browse files
Files changed (1) hide show
  1. Docker +53 -0
Docker ADDED
@@ -0,0 +1,53 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM ubuntu:18.04
2
+
3
+ COPY docker/scripts/prepare /scripts/
4
+ RUN /scripts/prepare
5
+
6
+ COPY docker/multi-process/scripts/standalone-packages /scripts/
7
+ RUN /scripts/standalone-packages
8
+
9
+ WORKDIR /app
10
+
11
+ ENV HOME=/app
12
+
13
+ ARG UID=1001
14
+ RUN useradd -u "$UID" -g 0 -d /app -s /sbin/nologin -c "default user" default
15
+
16
+ ENV LC_ALL=en_US.UTF-8
17
+ ENV RAILS_ENV=production
18
+
19
+ COPY ["Gemfile", "Gemfile.lock", "/app/"]
20
+ COPY lib/gemfile_helper.rb /app/lib/
21
+ COPY vendor/gems/ /app/vendor/gems/
22
+
23
+ # Get rid of annoying "fatal: Not a git repository (or any of the parent directories): .git" messages
24
+ RUN umask 002 && git init && \
25
+ bundle config set --local path vendor/bundle && \
26
+ bundle config set --local without 'test development' && \
27
+ APP_SECRET_TOKEN=secret DATABASE_ADAPTER=mysql2 ON_HEROKU=true bundle install -j 4
28
+
29
+ COPY ./ /app/
30
+
31
+ ARG OUTDATED_DOCKER_IMAGE_NAMESPACE=false
32
+ ENV OUTDATED_DOCKER_IMAGE_NAMESPACE=${OUTDATED_DOCKER_IMAGE_NAMESPACE}
33
+
34
+ RUN umask 002 && \
35
+ APP_SECRET_TOKEN=secret DATABASE_ADAPTER=mysql2 ON_HEROKU=true bundle exec rake assets:clean assets:precompile && \
36
+ chmod g=u /app/.env.example /app/Gemfile.lock /app/config/ /app/tmp/ && \
37
+ chown -R "$UID" /app
38
+
39
+ EXPOSE 3000
40
+
41
+ COPY docker/multi-process/scripts/supervisord.conf /etc/supervisor/
42
+ COPY ["docker/multi-process/scripts/bootstrap.conf", \
43
+ "docker/multi-process/scripts/foreman.conf", \
44
+ "docker/multi-process/scripts/mysqld.conf", "/etc/supervisor/conf.d/"]
45
+ COPY ["docker/multi-process/scripts/bootstrap.sh", \
46
+ "docker/multi-process/scripts/foreman.sh", \
47
+ "docker/multi-process/scripts/init", \
48
+ "docker/scripts/setup_env", "/scripts/"]
49
+ CMD ["/scripts/init"]
50
+
51
+ USER $UID
52
+
53
+ VOLUME /var/lib/mysql