Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
laradock
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Kerwin
laradock
Commits
5edf3f39
Commit
5edf3f39
authored
Feb 09, 2019
by
ahkui
Committed by
Shao Yu-Lung (Allen)
Feb 09, 2019
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update document and fix some container bug (#1785)
parent
f6c5aa18
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
77 additions
and
35 deletions
+77
-35
docker-compose.yml
docker-compose.yml
+32
-20
env-example
env-example
+13
-2
Dockerfile
ide-theia/Dockerfile
+2
-0
Dockerfile
jupyterhub/Dockerfile
+1
-0
jupyterhub_config.py
jupyterhub/jupyterhub_config.py
+8
-1
init_gitlab_db.sh
postgres/docker-entrypoint-initdb.d/init_gitlab_db.sh
+9
-6
init_jupyterhub_db.sh
postgres/docker-entrypoint-initdb.d/init_jupyterhub_db.sh
+9
-6
Dockerfile
redis-webui/Dockerfile
+3
-0
No files found.
docker-compose.yml
View file @
5edf3f39
...
...
@@ -386,6 +386,14 @@ services:
-
POSTGRES_DB=${POSTGRES_DB}
-
POSTGRES_USER=${POSTGRES_USER}
-
POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
-
GITLAB_POSTGRES_INIT=${GITLAB_POSTGRES_INIT}
-
GITLAB_POSTGRES_USER=${GITLAB_POSTGRES_USER}
-
GITLAB_POSTGRES_PASSWORD=${GITLAB_POSTGRES_PASSWORD}
-
GITLAB_POSTGRES_DB=${GITLAB_POSTGRES_DB}
-
JUPYTERHUB_POSTGRES_INIT=${JUPYTERHUB_POSTGRES_INIT}
-
JUPYTERHUB_POSTGRES_USER=${JUPYTERHUB_POSTGRES_USER}
-
JUPYTERHUB_POSTGRES_PASSWORD=${JUPYTERHUB_POSTGRES_PASSWORD}
-
JUPYTERHUB_POSTGRES_DB=${JUPYTERHUB_POSTGRES_DB}
networks
:
-
backend
...
...
@@ -925,18 +933,19 @@ services:
context
:
./gitlab
environment
:
GITLAB_OMNIBUS_CONFIG
:
|
external_url '${GITLAB_DOMAIN_NAME}'
redis['enable'] = false
nginx['listen_https'] = false
nginx['listen_port'] = 80
postgresql['enable'] = false
gitlab_rails['trusted_proxies'] = ['caddy','nginx','apache2']
gitlab_rails['redis_host'] = 'redis'
external_url '${GITLAB_DOMAIN_NAME}'
redis['enable'] = false
nginx['listen_https'] = false
nginx['listen_port'] = 80
nginx['custom_gitlab_server_config'] = "set_real_ip_from 172.0.0.0/8;\nreal_ip_header X-Real-IP;\nreal_ip_recursive on;"
postgresql['enable'] = false
gitlab_rails['trusted_proxies'] = ['caddy','nginx','apache2']
gitlab_rails['redis_host'] = 'redis'
gitlab_rails['redis_database'] = 8
gitlab_rails['db_host'] = '
postgres'
gitlab_rails['db_username'] = '
laradock_gitlab
'
gitlab_rails['db_password'] = '
laradock_gitlab
'
gitlab_rails['db_database'] = '
laradock_gitlab
'
gitlab_rails['db_host'] = '
${GITLAB_POSTGRES_HOST}'
gitlab_rails['db_username'] = '
${GITLAB_POSTGRES_USER}
'
gitlab_rails['db_password'] = '
${GITLAB_POSTGRES_PASSWORD}
'
gitlab_rails['db_database'] = '
${GITLAB_POSTGRES_DB}
'
gitlab_rails['initial_root_password'] = '${GITLAB_ROOT_PASSWORD}'
gitlab_rails['gitlab_shell_ssh_port'] = ${GITLAB_HOST_SSH_PORT}
volumes
:
...
...
@@ -955,12 +964,15 @@ services:
gitlab-runner
:
image
:
gitlab/gitlab-runner:latest
environment
:
-
CI_SERVER_URL=${GITLAB_DOMAIN_NAME}
-
CI_SERVER_URL=${GITLAB_CI_SERVER_URL}
-
REGISTRATION_TOKEN=${GITLAB_RUNNER_REGISTRATION_TOKEN}
-
RUNNER_NAME=${COMPOSE_PROJECT_NAME}-runner
-
REGISTER_NON_INTERACTIVE=${GITLAB_REGISTER_NON_INTERACTIVE}
-
RUNNER_EXECUTOR=shell
volumes
:
-
${DATA_PATH_HOST}/gitlab/runner:/etc/gitlab-runner
-
/var/run/docker.sock:/var/run/docker.sock:rw
restart
:
always
### JupyterHub #########################################
jupyterhub
:
build
:
...
...
@@ -968,7 +980,6 @@ services:
depends_on
:
-
postgres
-
jupyterhub-user
restart
:
always
volumes
:
-
/var/run/docker.sock:/var/run/docker.sock:rw
-
${DATA_PATH_HOST}/jupyterhub/:/data
...
...
@@ -989,7 +1000,8 @@ services:
-
JUPYTERHUB_OAUTH_CALLBACK_URL=${JUPYTERHUB_OAUTH_CALLBACK_URL}
-
JUPYTERHUB_OAUTH_CLIENT_ID=${JUPYTERHUB_OAUTH_CLIENT_ID}
-
JUPYTERHUB_OAUTH_CLIENT_SECRET=${JUPYTERHUB_OAUTH_CLIENT_SECRET}
-
JUPYTERHUB_LOCAL_NOTEBOOK_IMAGE=${JUPYTERHUB_LOCAL_NOTEBOOK_IMAGE}
-
JUPYTERHUB_LOCAL_NOTEBOOK_IMAGE=${COMPOSE_PROJECT_NAME}_jupyterhub-user
-
JUPYTERHUB_ENABLE_NVIDIA=${JUPYTERHUB_ENABLE_NVIDIA}
jupyterhub-user
:
build
:
context
:
./jupyterhub
...
...
@@ -1039,9 +1051,10 @@ services:
networks
:
-
backend
### PHPRedisAdmin ################################################
phpredisadmin
:
image
:
erikdubbelboer/phpredisadmin:latest
### REDISWEBUI ################################################
redis-webui
:
build
:
context
:
./redis-webui
environment
:
-
ADMIN_USER=${REDIS_WEBUI_USERNAME}
-
ADMIN_PASS=${REDIS_WEBUI_PASSWORD}
...
...
@@ -1058,7 +1071,6 @@ services:
mongo-webui
:
build
:
context
:
./mongo-webui
restart
:
always
environment
:
-
ROOT_URL=${MONGO_WEBUI_ROOT_URL}
-
MONGO_URL=${MONGO_WEBUI_MONGO_URL}
...
...
env-example
View file @
5edf3f39
...
...
@@ -500,14 +500,25 @@ SOLR_DATAIMPORTHANDLER_MYSQL=false
SOLR_DATAIMPORTHANDLER_MSSQL=false
### GITLAB ###############################################
GITLAB_POSTGRES_INIT=true
GITLAB_HOST_HTTP_PORT=8989
GITLAB_HOST_HTTPS_PORT=9898
GITLAB_HOST_SSH_PORT=2289
GITLAB_DOMAIN_NAME=http://localhost
GITLAB_ROOT_PASSWORD=laradock
GITLAB_HOST_LOG_PATH=./logs/gitlab
GITLAB_POSTGRES_HOST=postgres
GITLAB_POSTGRES_USER=laradock_gitlab
GITLAB_POSTGRES_PASSWORD=laradock_gitlab
GITLAB_POSTGRES_DB=laradock_gitlab
### GITLAB-RUNNER ###############################################
GITLAB_CI_SERVER_URL=http://localhost:8989
GITLAB_RUNNER_REGISTRATION_TOKEN=<my-registration-token>
GITLAB_REGISTER_NON_INTERACTIVE=true
### JUPYTERHUB ###############################################
JUPYTERHUB_POSTGRES_INIT=true
JUPYTERHUB_POSTGRES_HOST=postgres
JUPYTERHUB_POSTGRES_USER=laradock_jupyterhub
JUPYTERHUB_POSTGRES_PASSWORD=laradock_jupyterhub
...
...
@@ -516,10 +527,10 @@ JUPYTERHUB_PORT=9991
JUPYTERHUB_OAUTH_CALLBACK_URL=http://laradock:9991/hub/oauth_callback
JUPYTERHUB_OAUTH_CLIENT_ID={GITHUB_CLIENT_ID}
JUPYTERHUB_OAUTH_CLIENT_SECRET={GITHUB_CLIENT_SECRET}
JUPYTERHUB_LOCAL_NOTEBOOK_IMAGE=laradock_jupyterhub-user
JUPYTERHUB_CUSTOM_CONFIG=./jupyterhub/jupyterhub_config.py
JUPYTERHUB_USER_DATA=/jupyterhub
JUPYTERHUB_USER_LIST=./jupyterhub/userlist
JUPYTERHUB_ENABLE_NVIDIA=false
### IPYTHON ##################################################
LARADOCK_IPYTHON_CONTROLLER_IP=127.0.0.1
...
...
@@ -527,7 +538,7 @@ LARADOCK_IPYTHON_CONTROLLER_IP=127.0.0.1
### NETDATA ###############################################
NETDATA_PORT=19999
###
PHPREDISADMIN
#########################################
###
REDISWEBUI
#########################################
REDIS_WEBUI_USERNAME=laradock
REDIS_WEBUI_PASSWORD=laradock
REDIS_WEBUI_CONNECT_HOST=redis
...
...
ide-theia/Dockerfile
View file @
5edf3f39
...
...
@@ -5,3 +5,5 @@ LABEL maintainer="ahkui <ahkui@outlook.com>"
USER
root
RUN
echo
'fs.inotify.max_user_watches=524288'
>>
/etc/sysctl.conf
USER
theia
jupyterhub/Dockerfile
View file @
5edf3f39
...
...
@@ -10,6 +10,7 @@ ENV JUPYTERHUB_OAUTH_CALLBACK_URL ${JUPYTERHUB_OAUTH_CALLBACK_URL}
ENV
JUPYTERHUB_OAUTH_CLIENT_ID ${JUPYTERHUB_OAUTH_CLIENT_ID}
ENV
JUPYTERHUB_OAUTH_CLIENT_SECRET ${JUPYTERHUB_OAUTH_CLIENT_SECRET}
ENV
JUPYTERHUB_LOCAL_NOTEBOOK_IMAGE ${JUPYTERHUB_LOCAL_NOTEBOOK_IMAGE}
ENV
JUPYTERHUB_ENABLE_NVIDIA ${JUPYTERHUB_ENABLE_NVIDIA}
RUN
curl
-sL
https://deb.nodesource.com/setup_10.x | bash -
...
...
jupyterhub/jupyterhub_config.py
View file @
5edf3f39
...
...
@@ -6,6 +6,9 @@ import os
c
=
get_config
()
# create system users that don't exist yet
c
.
LocalAuthenticator
.
create_system_users
=
True
def
create_dir_hook
(
spawner
):
username
=
spawner
.
user
.
name
# get the username
volume_path
=
os
.
path
.
join
(
'/user-data'
,
username
)
...
...
@@ -45,8 +48,12 @@ network_name = os.environ.get('JUPYTERHUB_NETWORK_NAME','laradock_backend')
c
.
DockerSpawner
.
use_internal_ip
=
True
c
.
DockerSpawner
.
network_name
=
network_name
enable_nvidia
=
os
.
environ
.
get
(
'JUPYTERHUB_ENABLE_NVIDIA'
,
'false'
)
# Pass the network name as argument to spawned containers
c
.
DockerSpawner
.
extra_host_config
=
{
'network_mode'
:
network_name
,
'runtime'
:
'nvidia'
}
c
.
DockerSpawner
.
extra_host_config
=
{
'network_mode'
:
network_name
}
if
'true'
==
enable_nvidia
:
c
.
DockerSpawner
.
extra_host_config
=
{
'network_mode'
:
network_name
,
'runtime'
:
'nvidia'
}
pass
# c.DockerSpawner.extra_host_config = { 'network_mode': network_name, "devices":["/dev/nvidiactl","/dev/nvidia-uvm","/dev/nvidia0"] }
# Explicitly set notebook directory because we'll be mounting a host volume to
# it. Most jupyter/docker-stacks *-notebook images run the Notebook server as
...
...
postgres/docker-entrypoint-initdb.d/init_gitlab_db.sh
View file @
5edf3f39
...
...
@@ -33,9 +33,12 @@
# EOSQL
#
### default database and user for gitlab ##############################################
psql
-v
ON_ERROR_STOP
=
1
--username
"
$POSTGRES_USER
"
--dbname
"
$POSTGRES_DB
"
<<-
EOSQL
CREATE USER laradock_gitlab WITH PASSWORD 'laradock_gitlab';
CREATE DATABASE laradock_gitlab;
GRANT ALL PRIVILEGES ON DATABASE laradock_gitlab TO laradock_gitlab;
ALTER ROLE laradock_gitlab CREATEROLE SUPERUSER;
EOSQL
if
[
"
$GITLAB_POSTGRES_INIT
"
==
'true'
]
;
then
psql
-v
ON_ERROR_STOP
=
1
--username
"
$POSTGRES_USER
"
--dbname
"
$POSTGRES_DB
"
<<-
EOSQL
CREATE USER
$GITLAB_POSTGRES_USER
WITH PASSWORD '
$GITLAB_POSTGRES_PASSWORD
';
CREATE DATABASE
$GITLAB_POSTGRES_DB
;
GRANT ALL PRIVILEGES ON DATABASE
$GITLAB_POSTGRES_DB
TO
$GITLAB_POSTGRES_USER
;
ALTER ROLE
$GITLAB_POSTGRES_USER
CREATEROLE SUPERUSER;
EOSQL
echo
fi
\ No newline at end of file
postgres/docker-entrypoint-initdb.d/init_jupyterhub_db.sh
View file @
5edf3f39
...
...
@@ -33,9 +33,12 @@
# EOSQL
#
### default database and user for jupyterhub ##############################################
psql
-v
ON_ERROR_STOP
=
1
--username
"
$POSTGRES_USER
"
--dbname
"
$POSTGRES_DB
"
<<-
EOSQL
CREATE USER laradock_jupyterhub WITH PASSWORD 'laradock_jupyterhub';
CREATE DATABASE laradock_jupyterhub;
GRANT ALL PRIVILEGES ON DATABASE laradock_jupyterhub TO laradock_jupyterhub;
ALTER ROLE laradock_jupyterhub CREATEROLE SUPERUSER;
EOSQL
if
[
$JUPYTERHUB_POSTGRES_INIT
==
'true'
]
;
then
psql
-v
ON_ERROR_STOP
=
1
--username
"
$POSTGRES_USER
"
--dbname
"
$POSTGRES_DB
"
<<-
EOSQL
CREATE USER
$JUPYTERHUB_POSTGRES_USER
WITH PASSWORD '
$JUPYTERHUB_POSTGRES_PASSWORD
';
CREATE DATABASE
$JUPYTERHUB_POSTGRES_DB
;
GRANT ALL PRIVILEGES ON DATABASE
$JUPYTERHUB_POSTGRES_DB
TO
$JUPYTERHUB_POSTGRES_USER
;
ALTER ROLE
$JUPYTERHUB_POSTGRES_USER
CREATEROLE SUPERUSER;
EOSQL
echo
fi
redis-webui/Dockerfile
0 → 100644
View file @
5edf3f39
FROM
erikdubbelboer/phpredisadmin
LABEL
maintainer="ahkui <ahkui@outlook.com>"
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment