Show More
@@ -6,6 +6,7 b' RC_VERSION="4.24.1"' | |||||
6 |
|
6 | |||
7 | # Database access credentials |
|
7 | # Database access credentials | |
8 | POSTGRES_DB=rhodecode |
|
8 | POSTGRES_DB=rhodecode | |
|
9 | POSTGRES_USER=rhodecode | |||
9 | POSTGRES_PASSWORD=hUc1adS7oDd6Oj3in3 |
|
10 | POSTGRES_PASSWORD=hUc1adS7oDd6Oj3in3 | |
10 |
|
11 | |||
11 | # base url for running app |
|
12 | # base url for running app |
@@ -21,14 +21,21 b' volumes:' | |||||
21 | # volume for rhodecode caches, archive caches, elasticsearch etc |
|
21 | # volume for rhodecode caches, archive caches, elasticsearch etc | |
22 | datavolume: {} |
|
22 | datavolume: {} | |
23 |
|
23 | |||
24 | # postgres store |
|
24 | # volume for RhodeCode repo-store, it's where the repositories will be stored | |
25 | pg_data: {} |
|
25 | rhodecode_repos: | |
|
26 | labels: | |||
|
27 | "keep": 1 | |||
|
28 | ||||
|
29 | # volume for postgres db store | |||
|
30 | pg_data: | |||
|
31 | labels: | |||
|
32 | "keep": 1 | |||
26 |
|
33 | |||
27 | # volume for rhodecode elasticsearch |
|
34 | # volume for rhodecode elasticsearch | |
28 |
es_data: |
|
35 | es_data: | |
|
36 | labels: | |||
|
37 | "keep": 1 | |||
29 |
|
38 | |||
30 | # RhodeCode repo-store, it's where the repositories will be stored |
|
|||
31 | rhodecode_repos: {} |
|
|||
32 |
|
39 | |||
33 | networks: |
|
40 | networks: | |
34 | rhodecode_network: |
|
41 | rhodecode_network: | |
@@ -45,8 +52,7 b' services:' | |||||
45 | restart: unless-stopped |
|
52 | restart: unless-stopped | |
46 | command: [ |
|
53 | command: [ | |
47 | "/var/opt/rhodecode_bin/bin/gunicorn", |
|
54 | "/var/opt/rhodecode_bin/bin/gunicorn", | |
48 | "--name", |
|
55 | "--name=gunicorn-rhodecode-1", | |
49 | "gunicorn-rhodecode-1", |
|
|||
50 | "--error-logfile=-", |
|
56 | "--error-logfile=-", | |
51 | "--paster=/etc/rhodecode/conf/compose/rhodecode.optimized.ini", |
|
57 | "--paster=/etc/rhodecode/conf/compose/rhodecode.optimized.ini", | |
52 | "--config=/etc/rhodecode/conf/gunicorn_conf.py" |
|
58 | "--config=/etc/rhodecode/conf/gunicorn_conf.py" | |
@@ -57,7 +63,7 b' services:' | |||||
57 | build: |
|
63 | build: | |
58 | context: . |
|
64 | context: . | |
59 | dockerfile: service/rhodecode/rhodecode.dockerfile |
|
65 | dockerfile: service/rhodecode/rhodecode.dockerfile | |
60 | network: rhodecode_network |
|
66 | #network: rhodecode_network | |
61 | args: |
|
67 | args: | |
62 | TZ: ${TZ} |
|
68 | TZ: ${TZ} | |
63 | RHODECODE_VERSION: ${RC_VERSION:?specify-RC_VERSION-env-var} |
|
69 | RHODECODE_VERSION: ${RC_VERSION:?specify-RC_VERSION-env-var} | |
@@ -84,7 +90,6 b' services:' | |||||
84 | APACHE_LOG_DIR: /var/log/rhodecode/svn |
|
90 | APACHE_LOG_DIR: /var/log/rhodecode/svn | |
85 | MOD_DAV_SVN_CONF_FILE: /etc/rhodecode/conf/svn/mod_dav_svn.conf |
|
91 | MOD_DAV_SVN_CONF_FILE: /etc/rhodecode/conf/svn/mod_dav_svn.conf | |
86 |
|
92 | |||
87 |
|
||||
88 | healthcheck: |
|
93 | healthcheck: | |
89 | test: [ "CMD", "curl", "-A", "RhodeCode-Healthcheck", "-s", "-o", "/dev/null", "-w", "'%{http_code}'", "http://127.0.0.1:10020/_admin/ops/ping" ] |
|
94 | test: [ "CMD", "curl", "-A", "RhodeCode-Healthcheck", "-s", "-o", "/dev/null", "-w", "'%{http_code}'", "http://127.0.0.1:10020/_admin/ops/ping" ] | |
90 | timeout: 30s |
|
95 | timeout: 30s | |
@@ -278,7 +283,7 b' services:' | |||||
278 | elasticsearch: |
|
283 | elasticsearch: | |
279 | networks: |
|
284 | networks: | |
280 | - rhodecode_network |
|
285 | - rhodecode_network | |
281 |
image: docker.elastic.co/elasticsearch/elasticsearch:6.8.1 |
|
286 | image: docker.elastic.co/elasticsearch/elasticsearch:6.8.14 | |
282 |
|
287 | |||
283 | environment: |
|
288 | environment: | |
284 | - cluster.name=elasticsearch-cluster |
|
289 | - cluster.name=elasticsearch-cluster | |
@@ -322,11 +327,14 b' services:' | |||||
322 | redis: |
|
327 | redis: | |
323 | networks: |
|
328 | networks: | |
324 | - rhodecode_network |
|
329 | - rhodecode_network | |
325 |
image: rhodecode/redis:6. |
|
330 | image: rhodecode/redis:6.2.1 | |
|
331 | ||||
326 | build: |
|
332 | build: | |
327 | context: . |
|
333 | context: . | |
328 | dockerfile: service/redis/rhodecode_redis.dockerfile |
|
334 | dockerfile: service/redis/rhodecode_redis.dockerfile | |
329 | network: rhodecode_network |
|
335 | network: rhodecode_network | |
|
336 | args: | |||
|
337 | REDIS_BUILD: 6.2.1 | |||
330 |
|
338 | |||
331 | restart: unless-stopped |
|
339 | restart: unless-stopped | |
332 |
|
340 | |||
@@ -339,21 +347,25 b' services:' | |||||
339 | database: |
|
347 | database: | |
340 | networks: |
|
348 | networks: | |
341 | - rhodecode_network |
|
349 | - rhodecode_network | |
342 |
image: rhodecode/database:13. |
|
350 | image: rhodecode/database:13.2 | |
|
351 | ||||
343 | build: |
|
352 | build: | |
344 | context: . |
|
353 | context: . | |
345 | dockerfile: service/database/rhodecode_database.dockerfile |
|
354 | dockerfile: service/database/rhodecode_database.dockerfile | |
346 | network: rhodecode_network |
|
355 | network: rhodecode_network | |
347 | restart: unless-stopped |
|
356 | args: | |
348 |
|
357 | POSTGRES_BUILD: 13.2 | ||
349 | ports: |
|
|||
350 | - "127.0.0.1::5432" |
|
|||
351 |
|
358 | |||
352 | environment: |
|
359 | environment: | |
353 | POSTGRES_DB: ${POSTGRES_DB:?must-specify-db-name} |
|
360 | POSTGRES_DB: ${POSTGRES_DB:?must-specify-db-name} | |
354 | POSTGRES_USER: rhodecode |
|
361 | POSTGRES_USER: ${POSTGRES_USER:?must-specify-db-user} | |
355 | POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?must-specify-db-password} |
|
362 | POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?must-specify-db-password} | |
356 |
|
363 | |||
|
364 | restart: unless-stopped | |||
|
365 | ||||
|
366 | ports: | |||
|
367 | - "127.0.0.1::5432" | |||
|
368 | ||||
357 | volumes: |
|
369 | volumes: | |
358 | # save the pg_data volume |
|
370 | # save the pg_data volume | |
359 | - pg_data:/var/lib/postgresql/data |
|
371 | - pg_data:/var/lib/postgresql/data | |
@@ -362,11 +374,15 b' services:' | |||||
362 | nginx: |
|
374 | nginx: | |
363 | networks: |
|
375 | networks: | |
364 | - rhodecode_network |
|
376 | - rhodecode_network | |
365 |
image: rhodecode/nginx:1.19. |
|
377 | image: rhodecode/nginx:1.19.8 | |
|
378 | ||||
366 | build: |
|
379 | build: | |
367 | context: . |
|
380 | context: . | |
368 | dockerfile: service/nginx/rhodecode_nginx.dockerfile |
|
381 | dockerfile: service/nginx/rhodecode_nginx.dockerfile | |
369 | network: rhodecode_network |
|
382 | network: rhodecode_network | |
|
383 | args: | |||
|
384 | NGINX_BUILD: 1.19.8 | |||
|
385 | ||||
370 | restart: unless-stopped |
|
386 | restart: unless-stopped | |
371 |
|
387 | |||
372 | ports: |
|
388 | ports: |
@@ -1,4 +1,5 b'' | |||||
1 | FROM library/postgres:13.1 |
|
1 | ARG POSTGRES_BUILD | |
|
2 | FROM library/postgres:$POSTGRES_BUILD | |||
2 |
|
3 | |||
3 | COPY service/database/customized.conf /etc/conf.d/pg_customized.conf |
|
4 | COPY service/database/customized.conf /etc/conf.d/pg_customized.conf | |
4 | CMD ["postgres", "-c", "log_statement=ddl"] No newline at end of file |
|
5 | CMD ["postgres", "-c", "log_statement=ddl"] |
@@ -1,4 +1,5 b'' | |||||
1 | FROM library/nginx:1.19.6 |
|
1 | ARG NGINX_BUILD | |
|
2 | FROM library/nginx:$NGINX_BUILD | |||
2 |
|
3 | |||
3 | ENV NGINX_ENTRYPOINT_QUIET_LOGS=1 |
|
4 | ENV NGINX_ENTRYPOINT_QUIET_LOGS=1 | |
4 |
|
5 |
@@ -1,3 +1,4 b'' | |||||
1 | FROM library/redis:6.0.9 |
|
1 | ARG REDIS_BUILD | |
|
2 | FROM library/redis:$REDIS_BUILD | |||
2 | COPY service/redis/redis.conf /etc/redis/redis-rc.conf |
|
3 | COPY service/redis/redis.conf /etc/redis/redis-rc.conf | |
3 | CMD ["redis-server", "/etc/redis/redis-rc.conf"] |
|
4 | CMD ["redis-server", "/etc/redis/redis-rc.conf"] |
@@ -4,7 +4,9 b' MAINTAINER RhodeCode Inc. <support@rhodecode.com>' | |||||
4 | ARG TZ="UTC" |
|
4 | ARG TZ="UTC" | |
5 | ARG LOCALE_TYPE=en_US.UTF-8 |
|
5 | ARG LOCALE_TYPE=en_US.UTF-8 | |
6 | ARG RHODECODE_TYPE=Enterprise |
|
6 | ARG RHODECODE_TYPE=Enterprise | |
|
7 | # binary-install | |||
7 | ARG RHODECODE_VERSION=4.24.1 |
|
8 | ARG RHODECODE_VERSION=4.24.1 | |
|
9 | ||||
8 | ARG RHODECODE_DB=sqlite |
|
10 | ARG RHODECODE_DB=sqlite | |
9 | ARG RHODECODE_USER_NAME=admin |
|
11 | ARG RHODECODE_USER_NAME=admin | |
10 | ARG RHODECODE_USER_PASS=secret4 |
|
12 | ARG RHODECODE_USER_PASS=secret4 | |
@@ -76,6 +78,8 b' set -eux; \\' | |||||
76 | curl \ |
|
78 | curl \ | |
77 | sudo \ |
|
79 | sudo \ | |
78 | gosu \ |
|
80 | gosu \ | |
|
81 | bzip2 \ | |||
|
82 | ca-certificates \ | |||
79 | $PYTHON_DEPS \ |
|
83 | $PYTHON_DEPS \ | |
80 | $SSH_LOCALE_DEPS \ |
|
84 | $SSH_LOCALE_DEPS \ | |
81 | $SVN_LOCALE_DEPS \ |
|
85 | $SVN_LOCALE_DEPS \ | |
@@ -105,7 +109,8 b' ENV \\' | |||||
105 | RUN \ |
|
109 | RUN \ | |
106 | echo "** Create system user $RC_USER **" && \ |
|
110 | echo "** Create system user $RC_USER **" && \ | |
107 | groupadd --system --gid 999 $RC_USER && \ |
|
111 | groupadd --system --gid 999 $RC_USER && \ | |
108 | useradd --system --gid $RC_USER --uid 999 --shell /bin/bash $RC_USER |
|
112 | useradd --system --gid $RC_USER --uid 999 --shell /bin/bash $RC_USER && \ | |
|
113 | usermod -G $RC_USER $RC_USER | |||
109 |
|
114 | |||
110 | # set the defult bash shell |
|
115 | # set the defult bash shell | |
111 | SHELL ["/bin/bash", "-c"] |
|
116 | SHELL ["/bin/bash", "-c"] | |
@@ -119,6 +124,7 b' echo $TZ > /etc/timezone' | |||||
119 |
|
124 | |||
120 | RUN \ |
|
125 | RUN \ | |
121 | echo "** prepare rhodecode store and cache **" && \ |
|
126 | echo "** prepare rhodecode store and cache **" && \ | |
|
127 | install -d -m 0700 -o $RC_USER -g $RC_USER /nix && \ | |||
122 | install -d -m 0755 -o $RC_USER -g $RC_USER /opt/rhodecode && \ |
|
128 | install -d -m 0755 -o $RC_USER -g $RC_USER /opt/rhodecode && \ | |
123 | install -d -m 0755 -o $RC_USER -g $RC_USER /var/opt/rhodecode_bin && \ |
|
129 | install -d -m 0755 -o $RC_USER -g $RC_USER /var/opt/rhodecode_bin && \ | |
124 | install -d -m 0755 -o $RC_USER -g $RC_USER $RHODECODE_REPO_DIR && \ |
|
130 | install -d -m 0755 -o $RC_USER -g $RC_USER $RHODECODE_REPO_DIR && \ | |
@@ -163,8 +169,8 b' echo "**** Apache config ****" && \\' | |||||
163 |
|
169 | |||
164 | # Copy artifacts |
|
170 | # Copy artifacts | |
165 | COPY --chown=$RC_USER:$RC_USER .cache/* /home/$RC_USER/.rccontrol/cache/ |
|
171 | COPY --chown=$RC_USER:$RC_USER .cache/* /home/$RC_USER/.rccontrol/cache/ | |
166 | COPY --chown=$RC_USER:$RC_USER service/rhodecode/bootstrap/* /home/$RC_USER/.rccontrol/bootstrap/ |
|
|||
167 | COPY --chown=$RC_USER:$RC_USER config/compose/rhodecode_enterprise.license /home/$RC_USER/.rccontrol/bootstrap/ |
|
172 | COPY --chown=$RC_USER:$RC_USER config/compose/rhodecode_enterprise.license /home/$RC_USER/.rccontrol/bootstrap/ | |
|
173 | COPY --chown=$RC_USER:$RC_USER service/rhodecode/bootstrap/* /home/$RC_USER/.rccontrol/bootstrap/ | |||
168 |
|
174 | |||
169 | RUN \ |
|
175 | RUN \ | |
170 | echo "**** locale-archive path ****" && \ |
|
176 | echo "**** locale-archive path ****" && \ | |
@@ -181,33 +187,36 b' echo "** install rhodecode control **" && \\' | |||||
181 | chmod +x ${INSTALLER} && \ |
|
187 | chmod +x ${INSTALLER} && \ | |
182 | ${INSTALLER} --accept-license && \ |
|
188 | ${INSTALLER} --accept-license && \ | |
183 | ${RCCONTROL} self-init && \ |
|
189 | ${RCCONTROL} self-init && \ | |
184 | cp -v /home/$RC_USER/.rccontrol-profile/etc/ca-bundle.crt $BUILD_CONF/ |
|
190 | cp -v /home/$RC_USER/.rccontrol-profile/etc/ca-bundle.crt $BUILD_CONF/ && \ | |
|
191 | echo "Done" | |||
185 |
|
192 | |||
186 | RUN \ |
|
193 | RUN \ | |
187 | echo "** install vcsserver ${RHODECODE_VERSION} **" && \ |
|
194 | echo "** install vcsserver ${RHODECODE_VERSION} **" && \ | |
188 | ${RCCONTROL} install VCSServer --version ${RHODECODE_VERSION} --start-at-boot=yes --accept-license --offline \ |
|
195 | ${RCCONTROL} install VCSServer --version ${RHODECODE_VERSION} --start-at-boot=yes --accept-license --offline \ | |
189 | '{"host":"'"$RHODECODE_VCS_HOST"'", "port":"'"$RHODECODE_VCS_PORT"'"}' && \ |
|
196 | '{"host":"'"$RHODECODE_VCS_HOST"'", "port":"'"$RHODECODE_VCS_PORT"'"}' && \ | |
190 | VCSSERVER_PATH=/home/$RC_USER/.rccontrol/vcsserver-1 && \ |
|
197 | VCSSERVER_PATH=/home/$RC_USER/.rccontrol/vcsserver-1 && \ | |
191 | cp -v ${VCSSERVER_PATH}/vcsserver.ini $BUILD_CONF/ |
|
198 | rm -rf $BUILD_BIN_DIR/vcs_bin && ln -s ${VCSSERVER_PATH}/profile/bin $BUILD_BIN_DIR/vcs_bin && \ | |
|
199 | cp -v ${VCSSERVER_PATH}/vcsserver.ini $BUILD_CONF/vcsserver.ini | |||
192 |
|
200 | |||
193 | RUN \ |
|
201 | RUN \ | |
194 | echo "** install rhodecode ${RHODECODE_TYPE} ${RHODECODE_VERSION} **" && \ |
|
202 | echo "** install rhodecode ${RHODECODE_TYPE} ${RHODECODE_VERSION} **" && \ | |
195 |
|
|
203 | RHODECODE_DB_INIT=sqlite && \ | |
196 |
|
|
204 | ${RCCONTROL} install ${RHODECODE_TYPE} --version ${RHODECODE_VERSION} --start-at-boot=yes --accept-license --offline \ | |
197 |
|
|
205 | '{"host":"'"$RHODECODE_HOST"'", "port":"'"$RHODECODE_HTTP_PORT"'", "username":"'"$RHODECODE_USER_NAME"'", "password":"'"$RHODECODE_USER_PASS"'", "email":"'"$RHODECODE_USER_EMAIL"'", "repo_dir":"'"$RHODECODE_REPO_DIR"'", "database": "'"$RHODECODE_DB_INIT"'", "skip_existing_db": "1"}' && \ | |
198 |
|
|
206 | RHODECODE_PATH=/home/$RC_USER/.rccontrol/${RC_TYPE_ID} && \ | |
199 | cp -v ${RHODECODE_PATH}/rhodecode.ini $BUILD_CONF/ && \ |
|
207 | rm -rf $BUILD_BIN_DIR/bin && ln -s ${RHODECODE_PATH}/profile/bin $BUILD_BIN_DIR/ && \ | |
200 |
|
|
208 | cp -v ${RHODECODE_PATH}/rhodecode.ini $BUILD_CONF/rhodecode.ini && \ | |
201 |
|
|
209 | cp -v ${RHODECODE_PATH}/gunicorn_conf.py $BUILD_CONF/gunicorn_conf.py && \ | |
202 | rm -rf $BUILD_BIN_DIR/bin && ln -s ${RHODECODE_PATH}/profile/bin $BUILD_BIN_DIR && \ |
|
210 | cp -v ${RHODECODE_PATH}/search_mapping.ini $BUILD_CONF/search_mapping.ini && \ | |
203 |
|
|
211 | mkdir -p $RHODECODE_DATA_DIR/static && cp -r ${RHODECODE_PATH}/public/* $RHODECODE_DATA_DIR/static/ && \ | |
204 |
|
|
212 | rm ${RHODECODE_PATH}/rhodecode.db | |
205 |
|
213 | |||
206 |
|
214 | |||
207 | RUN \ |
|
215 | RUN \ | |
208 | echo "** configure supervisord **" && \ |
|
216 | echo "** configure supervisord **" && \ | |
209 |
|
|
217 | cp -v ${SUPERVISOR_CONF} $BUILD_CONF/ && \ | |
210 |
|
|
218 | sed -i "s/self_managed_supervisor = False/self_managed_supervisor = True/g" /home/$RC_USER/.rccontrol.ini && \ | |
|
219 | echo "done" | |||
211 |
|
220 | |||
212 | USER root |
|
221 | USER root | |
213 |
|
222 |
General Comments 0
You need to be logged in to leave comments.
Login now