Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Kevin Morris
aurweb
Commits
f4cfc7c5
Verified
Commit
f4cfc7c5
authored
Oct 19, 2021
by
Kevin Morris
Browse files
Merge branch 'feat-host-maridb-cfg' into pu
parents
210d92e3
4f505ca6
Pipeline
#12299
passed with stage
in 6 minutes and 35 seconds
Changes
10
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
.env
View file @
f4cfc7c5
FASTAPI_BACKEND="uvicorn"
FASTAPI_WORKERS=2
MARIADB_SOCKET_DIR="/var/run/mysqld/"
conf/config.dev
View file @
f4cfc7c5
...
...
@@ -10,12 +10,12 @@
backend = mysql
; If using sqlite, set name to the database file path.
name = aurweb
_test
name = aurweb
; MySQL database information. User defaults to root for containerized
; testing with mysqldb. This should be set to a non-root user.
user =
root
;
password =
non-root-user-password
user =
aur
password =
aur
host = localhost
;port = 3306
socket = /var/run/mysqld/mysqld.sock
...
...
docker-compose.override.yml
View file @
f4cfc7c5
services
:
mariadb
:
image
:
aurweb:latest
init
:
true
entrypoint
:
/docker/mariadb-entrypoint.sh
command
:
/usr/bin/mysqld_safe --datadir=/var/lib/mysql
ports
:
# This will expose mariadbd on 127.0.0.1:13306 in the host.
# Ex: `mysql -uaur -paur -h 127.0.0.1 -P 13306 aurweb`
-
"
13306:3306"
volumes
:
-
mariadb_run:/var/run/mysqld
# Bind socket in this volume.
-
mariadb_data:/var/lib/mysql
healthcheck
:
test
:
"
bash
/docker/health/mariadb.sh"
mariadb_init
:
depends_on
:
mariadb
:
condition
:
service_healthy
ca
:
volumes
:
-
./cache:/cache
...
...
@@ -13,6 +33,9 @@ services:
-
git_data:/aurweb/aur.git
-
./cache:/cache
-
smartgit_run:/var/run/smartgit
depends_on
:
mariadb
:
condition
:
service_healthy
php-fpm
:
volumes
:
...
...
docker-compose.prod.yml
View file @
f4cfc7c5
...
...
@@ -9,6 +9,7 @@ services:
volumes
:
-
git_data:/aurweb/aur.git
-
cache:/cache
-
${MARIADB_SOCKET_DIR}:/var/run/mysqld
smartgit
:
volumes
:
...
...
@@ -19,12 +20,18 @@ services:
php-fpm
:
volumes
:
-
cache:/cache
-
${MARIADB_SOCKET_DIR}:/var/run/mysqld
fastapi
:
environment
:
-
FASTAPI_BACKEND="gunicorn"
volumes
:
-
cache:/cache
-
${MARIADB_SOCKET_DIR}:/var/run/mysqld
mariadb_init
:
volumes
:
-
${MARIADB_SOCKET_DIR}:/var/run/mysqld
nginx
:
volumes
:
...
...
@@ -34,7 +41,7 @@ services:
-
smartgit_run:/var/run/smartgit
volumes
:
mariadb_run
:
{}
# Share /var/run/mysqld
/mysqld.sock
mariadb_run
:
{}
# Share /var/run/mysqld
mariadb_data
:
{}
# Share /var/lib/mysql
git_data
:
{}
# Share aurweb/aur.git
smartgit_run
:
{}
...
...
docker-compose.yml
View file @
f4cfc7c5
...
...
@@ -48,38 +48,19 @@ services:
ports
:
-
"
16379:6379"
mariadb
:
image
:
aurweb:latest
init
:
true
entrypoint
:
/docker/mariadb-entrypoint.sh
command
:
/usr/bin/mysqld_safe --datadir=/var/lib/mysql
ports
:
# This will expose mariadbd on 127.0.0.1:13306 in the host.
# Ex: `mysql -uaur -paur -h 127.0.0.1 -P 13306 aurweb`
-
"
13306:3306"
volumes
:
-
mariadb_run:/var/run/mysqld
# Bind socket in this volume.
-
mariadb_data:/var/lib/mysql
healthcheck
:
test
:
"
bash
/docker/health/mariadb.sh"
mariadb_init
:
image
:
aurweb:latest
init
:
true
environment
:
-
DB_HOST=mariadb
entrypoint
:
/docker/mariadb-init-entrypoint.sh
command
:
echo "MariaDB tables initialized."
depends_on
:
mariadb
:
condition
:
service_healthy
volumes
:
-
mariadb_run:/var/run/mysqld
git
:
image
:
aurweb:latest
init
:
true
environment
:
-
AUR_CONFIG=/aurweb/conf/config
-
DB_HOST=mariadb
entrypoint
:
/docker/git-entrypoint.sh
command
:
/docker/scripts/run-sshd.sh
ports
:
...
...
@@ -89,6 +70,8 @@ services:
depends_on
:
mariadb_init
:
condition
:
service_started
volumes
:
-
mariadb_run:/var/run/mysqld
smartgit
:
image
:
aurweb:latest
...
...
@@ -99,9 +82,6 @@ services:
command
:
/docker/scripts/run-smartgit.sh
healthcheck
:
test
:
"
bash
/docker/health/smartgit.sh"
depends_on
:
mariadb
:
condition
:
service_healthy
cgit-php
:
image
:
aurweb:latest
...
...
@@ -138,7 +118,6 @@ services:
init
:
true
environment
:
-
AUR_CONFIG=/aurweb/conf/config
-
DB_HOST=mariadb
entrypoint
:
/docker/php-entrypoint.sh
command
:
/docker/scripts/run-php.sh
healthcheck
:
...
...
@@ -150,6 +129,8 @@ services:
condition
:
service_healthy
memcached
:
condition
:
service_healthy
volumes
:
-
mariadb_run:/var/run/mysqld
ports
:
-
"
19000:9000"
...
...
@@ -158,7 +139,6 @@ services:
init
:
true
environment
:
-
AUR_CONFIG=conf/config
-
DB_HOST=mariadb
-
FASTAPI_WORKERS=${FASTAPI_WORKERS}
entrypoint
:
/docker/fastapi-entrypoint.sh
command
:
/docker/scripts/run-fastapi.sh "${FASTAPI_BACKEND}"
...
...
@@ -171,6 +151,8 @@ services:
condition
:
service_healthy
redis
:
condition
:
service_healthy
volumes
:
-
mariadb_run:/var/run/mysqld
ports
:
-
"
18000:8000"
...
...
@@ -228,7 +210,6 @@ services:
init
:
true
environment
:
-
AUR_CONFIG=conf/config
-
DB_HOST=mariadb
entrypoint
:
/docker/test-mysql-entrypoint.sh
command
:
/docker/scripts/run-pytests.sh clean
stdin_open
:
true
...
...
@@ -237,6 +218,7 @@ services:
mariadb_init
:
condition
:
service_started
volumes
:
-
mariadb_run:/var/run/mysqld
-
git_data:/aurweb/aur.git
-
./cache:/cache
-
./aurweb:/aurweb/aurweb
...
...
@@ -274,7 +256,6 @@ services:
init
:
true
environment
:
-
AUR_CONFIG=conf/config
-
DB_HOST=mariadb
entrypoint
:
/docker/tests-entrypoint.sh
command
:
setup-sqlite.sh run-tests.sh
stdin_open
:
true
...
...
@@ -283,6 +264,7 @@ services:
mariadb_init
:
condition
:
service_started
volumes
:
-
mariadb_run:/var/run/mysqld
-
git_data:/aurweb/aur.git
-
./cache:/cache
-
./aurweb:/aurweb/aurweb
...
...
docker/fastapi-entrypoint.sh
View file @
f4cfc7c5
#!/bin/bash
set
-eou
pipefail
[[
-z
"
$DB_HOST
"
]]
&&
echo
'Error: $DB_HOST required but missing.'
&&
exit
1
DB_NAME
=
"aurweb"
DB_USER
=
"aur"
DB_PASS
=
"aur"
# Setup a config for our mysql db.
cp
-vf
conf/config.dev conf/config
sed
-i
"s;YOUR_AUR_ROOT;
$(
pwd
)
;g"
conf/config
sed
-ri
"s/^(name) = .+/
\1
=
${
DB_NAME
}
/"
conf/config
sed
-ri
"s/^(host) = .+/
\1
=
${
DB_HOST
}
/"
conf/config
sed
-ri
"s/^(user) = .+/
\1
=
${
DB_USER
}
/"
conf/config
sed
-ri
"s/^;?(password) = .+/
\1
=
${
DB_PASS
}
/"
conf/config
sed
-ri
"s;^(aur_location) = .+;
\1
= https://localhost:8444;"
conf/config
...
...
docker/git-entrypoint.sh
View file @
f4cfc7c5
...
...
@@ -38,18 +38,9 @@ Match User aur
AcceptEnv AUR_OVERWRITE
EOF
DB_NAME
=
"aurweb"
DB_HOST
=
"mariadb"
DB_USER
=
"aur"
DB_PASS
=
"aur"
# Setup a config for our mysql db.
cp
-vf
conf/config.dev
$AUR_CONFIG
sed
-i
"s;YOUR_AUR_ROOT;
$(
pwd
)
;g"
$AUR_CONFIG
sed
-ri
"s/^(name) = .+/
\1
=
${
DB_NAME
}
/"
$AUR_CONFIG
sed
-ri
"s/^(host) = .+/
\1
=
${
DB_HOST
}
/"
$AUR_CONFIG
sed
-ri
"s/^(user) = .+/
\1
=
${
DB_USER
}
/"
$AUR_CONFIG
sed
-ri
"s/^;?(password) = .+/
\1
=
${
DB_PASS
}
/"
$AUR_CONFIG
AUR_CONFIG_DEFAULTS
=
"
${
AUR_CONFIG
}
.defaults"
...
...
docker/mariadb-init-entrypoint.sh
View file @
f4cfc7c5
#!/bin/bash
set
-eou
pipefail
[[
-z
"
$DB_HOST
"
]]
&&
echo
'Error: $DB_HOST required but missing.'
&&
exit
1
DB_NAME
=
"aurweb"
DB_USER
=
"aur"
DB_PASS
=
"aur"
# Setup a config for our mysql db.
cp
-vf
conf/config.dev conf/config
sed
-i
"s;YOUR_AUR_ROOT;
$(
pwd
)
;g"
conf/config
sed
-ri
"s/^(name) = .+/
\1
=
${
DB_NAME
}
/"
conf/config
sed
-ri
"s/^(host) = .+/
\1
=
${
DB_HOST
}
/"
conf/config
sed
-ri
"s/^(user) = .+/
\1
=
${
DB_USER
}
/"
conf/config
sed
-ri
"s/^;?(password) = .+/
\1
=
${
DB_PASS
}
/"
conf/config
python
-m
aurweb.initdb 2>/dev/null
||
/bin/true
...
...
docker/php-entrypoint.sh
View file @
f4cfc7c5
#!/bin/bash
set
-eou
pipefail
[[
-z
"
$DB_HOST
"
]]
&&
echo
'Error: $DB_HOST required but missing.'
&&
exit
1
DB_NAME
=
"aurweb"
DB_USER
=
"aur"
DB_PASS
=
"aur"
# Setup a config for our mysql db.
cp
-vf
conf/config.dev conf/config
sed
-i
"s;YOUR_AUR_ROOT;
$(
pwd
)
;g"
conf/config
sed
-ri
"s/^(name) = .+/
\1
=
${
DB_NAME
}
/"
conf/config
sed
-ri
"s/^(host) = .+/
\1
=
${
DB_HOST
}
/"
conf/config
sed
-ri
"s/^(user) = .+/
\1
=
${
DB_USER
}
/"
conf/config
sed
-ri
"s/^;?(password) = .+/
\1
=
${
DB_PASS
}
/"
conf/config
sed
-ri
"s;^(aur_location) = .+;
\1
= https://localhost:8443;"
conf/config
...
...
docker/test-mysql-entrypoint.sh
View file @
f4cfc7c5
#!/bin/bash
set
-eou
pipefail
[[
-z
"
$DB_HOST
"
]]
&&
echo
'Error: $DB_HOST required but missing.'
&&
exit
1
DB_NAME
=
"aurweb_test"
DB_USER
=
"aur"
DB_PASS
=
"aur"
# Setup a config for our mysql db.
cp
-vf
conf/config.dev conf/config
sed
-i
"s;YOUR_AUR_ROOT;
$(
pwd
)
;g"
conf/config
sed
-ri
"s/^(name) = .+/
\1
=
${
DB_NAME
}
/"
conf/config
sed
-ri
"s/^(host) = .+/
\1
=
${
DB_HOST
}
/"
conf/config
sed
-ri
"s/^(user) = .+/
\1
=
${
DB_USER
}
/"
conf/config
sed
-ri
"s/^;?(password) = .+/
\1
=
${
DB_PASS
}
/"
conf/config
# The port can be excluded from use if properly using
# volumes to share the mysql socket from the mariadb service.
...
...
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