split dockerfiles based on db
This commit is contained in:
parent
04a9ba425d
commit
e49f8fa3ae
19
docker/README.docker
Normal file
19
docker/README.docker
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
Before you begin
|
||||||
|
* copy db schema run ./cp_schema.sh
|
||||||
|
* edit turnserver/turnserver.cfg according your db selection (mysql or postgresql or redis or mongodb)
|
||||||
|
|
||||||
|
# start
|
||||||
|
|
||||||
|
docker-compose -f docker-compose-all.yml up --build --detach
|
||||||
|
|
||||||
|
# restart
|
||||||
|
Notice: May restart needed for coturn container, if it could not access database yet, due initialization delay.
|
||||||
|
docker restart docker_coturn_1
|
||||||
|
|
||||||
|
# stop
|
||||||
|
docker-compose -f docker-compose-all.yml down
|
||||||
|
|
||||||
|
|
||||||
|
# Or Stop with volume removal
|
||||||
|
docker-compose down --volumes
|
||||||
|
|
||||||
@ -19,7 +19,7 @@ RUN make
|
|||||||
|
|
||||||
### 2. stage: create production image
|
### 2. stage: create production image
|
||||||
|
|
||||||
FROM debian:stable-slim AS coturn
|
FROM debian:stable AS coturn
|
||||||
|
|
||||||
ENV INSTALL_PREFIX /usr/local
|
ENV INSTALL_PREFIX /usr/local
|
||||||
ENV BUILD_PREFIX /usr/local/src
|
ENV BUILD_PREFIX /usr/local/src
|
||||||
@ -28,12 +28,14 @@ ENV TURNSERVER_USER turnserver
|
|||||||
|
|
||||||
COPY --from=coturn-build ${BUILD_PREFIX}/coturn/bin/ ${INSTALL_PREFIX}/bin/
|
COPY --from=coturn-build ${BUILD_PREFIX}/coturn/bin/ ${INSTALL_PREFIX}/bin/
|
||||||
COPY --from=coturn-build ${BUILD_PREFIX}/coturn/man/ ${INSTALL_PREFIX}/man/
|
COPY --from=coturn-build ${BUILD_PREFIX}/coturn/man/ ${INSTALL_PREFIX}/man/
|
||||||
COPY turnserver.conf ${INSTALL_PREFIX}/etc
|
#COPY turnserver.conf ${INSTALL_PREFIX}/etc
|
||||||
COPY --from=coturn-build ${BUILD_PREFIX}/coturn/sqlite/turndb ${INSTALL_PREFIX}/var/db/turndb
|
COPY --from=coturn-build ${BUILD_PREFIX}/coturn/sqlite/turndb ${INSTALL_PREFIX}/var/db/turndb
|
||||||
|
COPY --from=coturn-build ${BUILD_PREFIX}/coturn/turndb ${INSTALL_PREFIX}/turndb
|
||||||
# Install build dependencies
|
# Install build dependencies
|
||||||
RUN export DEBIAN_FRONTEND=noninteractive && \
|
RUN export DEBIAN_FRONTEND=noninteractive && \
|
||||||
apt-get update && \
|
apt-get update && \
|
||||||
apt-get install -y libc6>=2.15 libevent-core-2.0-5>=2.0.10-stable libevent-extra-2.0-5>=2.0.10-stable libevent-openssl-2.0-5>=2.0.10-stable libevent-pthreads-2.0-5>=2.0.10-stable libhiredis0.13>=0.13.1 libmariadbclient18>=5.5.36 libpq5>=8.4~ libsqlite3-0>=3.6.0 libssl1.1>=1.1.0 libmongoc-1.0 libbson-1.0
|
apt-get install -y libc6>=2.15 libevent-core-2.0-5>=2.0.10-stable libevent-extra-2.0-5>=2.0.10-stable libevent-openssl-2.0-5>=2.0.10-stable libevent-pthreads-2.0-5>=2.0.10-stable libhiredis0.13>=0.13.1 libmariadbclient18>=5.5.36 libpq5>=8.4~ libsqlite3-0>=3.6.0 libssl1.1>=1.1.0 libmongoc-1.0 libbson-1.0
|
||||||
|
RUN apt-get install -y mysql-client postgresql-client redis-tools mongodb-clients
|
||||||
|
|
||||||
RUN if ! getent group "$TURNSERVER_GROUP" >/dev/null; then \
|
RUN if ! getent group "$TURNSERVER_GROUP" >/dev/null; then \
|
||||||
addgroup --system "$TURNSERVER_GROUP" || exit 1 ;\
|
addgroup --system "$TURNSERVER_GROUP" || exit 1 ;\
|
||||||
@ -61,8 +63,8 @@ EXPOSE 5766
|
|||||||
# Relay Ports
|
# Relay Ports
|
||||||
EXPOSE 49152-65535 49152-65535/udp
|
EXPOSE 49152-65535 49152-65535/udp
|
||||||
|
|
||||||
|
#COPY ./docker-entrypoint.sh /
|
||||||
|
#ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||||
|
|
||||||
WORKDIR ${INSTALL_PREFIX}
|
WORKDIR ${INSTALL_PREFIX}
|
||||||
|
|
||||||
CMD ${INSTALL_PREFIX}/bin/turnserver
|
CMD ${INSTALL_PREFIX}/bin/turnserver
|
||||||
|
|
||||||
35
docker/coturn/cert.pem
Normal file
35
docker/coturn/cert.pem
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIGFzCCBP+gAwIBAgISA6lUbjohIPynulrqRhhtei8uMA0GCSqGSIb3DQEBCwUA
|
||||||
|
MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD
|
||||||
|
ExpMZXQncyBFbmNyeXB0IEF1dGhvcml0eSBYMzAeFw0xODA5MDkwOTM3NTJaFw0x
|
||||||
|
ODEyMDgwOTM3NTJaMCExHzAdBgNVBAMTFmRvY2tlci5sYWIudnZjLm5paWYuaHUw
|
||||||
|
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDR2NpBf8lYR9x1Aq1AltIr
|
||||||
|
huhuWPqtzRSTxNPlHAD5qfx86IWex59jx+aNAfYZSUg9Zex13XNgJAO37fSxQ5LY
|
||||||
|
zEXDgGusIbaZ3rSW+62Smpw2p4nrDVetf39A83jXMTU/yWLT43ab6tgfpnggpHzO
|
||||||
|
YLnaG46DVjTXEJTd38sRZoGZdHUcMqV7A5463vsoukBrmO9wpPUz6U/uTw7tD0eQ
|
||||||
|
f5dJViqY88120hXIxqD9vxJpn7aOK2H9sa9OJ3XVRwyCpnB980CMM4kCqMh0j3EA
|
||||||
|
z6T0UblDpEiZjcMVKyjKAlDntbQXmy0bvABdU1LI98QXqEGzGYBA+wxVs6hcf4+n
|
||||||
|
AgMBAAGjggMeMIIDGjAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUH
|
||||||
|
AwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFKrVAeFyV+crd1H1
|
||||||
|
SOlUXtyYCALQMB8GA1UdIwQYMBaAFKhKamMEfd265tE5t6ZFZe/zqOyhMG8GCCsG
|
||||||
|
AQUFBwEBBGMwYTAuBggrBgEFBQcwAYYiaHR0cDovL29jc3AuaW50LXgzLmxldHNl
|
||||||
|
bmNyeXB0Lm9yZzAvBggrBgEFBQcwAoYjaHR0cDovL2NlcnQuaW50LXgzLmxldHNl
|
||||||
|
bmNyeXB0Lm9yZy8wIQYDVR0RBBowGIIWZG9ja2VyLmxhYi52dmMubmlpZi5odTCB
|
||||||
|
/gYDVR0gBIH2MIHzMAgGBmeBDAECATCB5gYLKwYBBAGC3xMBAQEwgdYwJgYIKwYB
|
||||||
|
BQUHAgEWGmh0dHA6Ly9jcHMubGV0c2VuY3J5cHQub3JnMIGrBggrBgEFBQcCAjCB
|
||||||
|
ngyBm1RoaXMgQ2VydGlmaWNhdGUgbWF5IG9ubHkgYmUgcmVsaWVkIHVwb24gYnkg
|
||||||
|
UmVseWluZyBQYXJ0aWVzIGFuZCBvbmx5IGluIGFjY29yZGFuY2Ugd2l0aCB0aGUg
|
||||||
|
Q2VydGlmaWNhdGUgUG9saWN5IGZvdW5kIGF0IGh0dHBzOi8vbGV0c2VuY3J5cHQu
|
||||||
|
b3JnL3JlcG9zaXRvcnkvMIIBBAYKKwYBBAHWeQIEAgSB9QSB8gDwAHYAKTxRllTI
|
||||||
|
OWW6qlD8WAfUt2+/WHopctykwwz05UVH9HgAAAFlvejBzwAABAMARzBFAiEAwGHT
|
||||||
|
AIxt5AEprWh2r7eyK/GZKZZheimdNtCca6q4LMACICxxpzVgjAkikFARMwUxvGfs
|
||||||
|
73T5lSzAsRLa9w88bGSFAHYAwRZK4Kdy0tQ5LcgKwQdw1PDEm96ZGkhAwfoHUWT2
|
||||||
|
M2AAAAFlvejDqgAABAMARzBFAiEAisNayIaZAimDAhbhpTuMhOY6ZCtqQqHHrTId
|
||||||
|
HRTJD8cCIFhfNrFMemmfT9kAWZ2phtRqtVjAHYVEq5HbbcLnQ3YwMA0GCSqGSIb3
|
||||||
|
DQEBCwUAA4IBAQAHhIpkn23C53LMI+ns5QDFDtGLxJWycZt83WowFXfFuT87K+LW
|
||||||
|
n0kUMl3GLlEbP8hi7LAH21p9WNSfFFwQmdqiO/eRm8quDjfOMmDu7njVASzTSeke
|
||||||
|
uiuSgqGq2BRiFI5juHo1UqqzQItcv4BvMS8l7bAQRgek2bhmUlb68Ebr3awFEdSQ
|
||||||
|
McjzYKZT0mIQgVTWik7PyMJTnzFYu5KHiU6n8B/UZqZP3hAJnHt6pG0brjaKUcaD
|
||||||
|
aPQYYxE363Vo0L7aC0Gkmi8FnS9f2c0nkxI4aMqbFlxiIztydHvk5R1gO7bOakP/
|
||||||
|
Im62n/0uRF4BrgWqxYEuAYnzCYsqg1oByl8V
|
||||||
|
-----END CERTIFICATE-----
|
||||||
1
docker/coturn/coturn.env
Normal file
1
docker/coturn/coturn.env
Normal file
@ -0,0 +1 @@
|
|||||||
|
# for future usage
|
||||||
28
docker/coturn/privkey.pem
Normal file
28
docker/coturn/privkey.pem
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDR2NpBf8lYR9x1
|
||||||
|
Aq1AltIrhuhuWPqtzRSTxNPlHAD5qfx86IWex59jx+aNAfYZSUg9Zex13XNgJAO3
|
||||||
|
7fSxQ5LYzEXDgGusIbaZ3rSW+62Smpw2p4nrDVetf39A83jXMTU/yWLT43ab6tgf
|
||||||
|
pnggpHzOYLnaG46DVjTXEJTd38sRZoGZdHUcMqV7A5463vsoukBrmO9wpPUz6U/u
|
||||||
|
Tw7tD0eQf5dJViqY88120hXIxqD9vxJpn7aOK2H9sa9OJ3XVRwyCpnB980CMM4kC
|
||||||
|
qMh0j3EAz6T0UblDpEiZjcMVKyjKAlDntbQXmy0bvABdU1LI98QXqEGzGYBA+wxV
|
||||||
|
s6hcf4+nAgMBAAECggEBAJ6vpMR5NLIcjXqyjn9UThR6TVP813wMpG3mHvKXTal+
|
||||||
|
wR9X2ouqmz6iURb6j7apcwZzB/BNiUz/jwxM1ogh+G8Xcf4YI9QkHmiXP+sY4TYG
|
||||||
|
0vCFm0bzbQUXcAyW0R+x53mX+bMPxIa9fbfZc+gDWxnZjVGBGzD4RLcJo/lwnahG
|
||||||
|
gt02EROW4bbHu+7EgWTnwH0WNO8ivtFs5qq6twOcCiA/ri5op2Qy1iLAWY6g2pf5
|
||||||
|
exvJNeqUP2QNOgWJJpUADD/B+fUDrsYtLA9hba63IkRnTgeSCsOfB2Rmqkehg9SB
|
||||||
|
bIZjqFDBCZuDhrdi4xyO+54TcKMAb04rNtu4g9vzXFkCgYEA/hs5CE/SEfh/FLaN
|
||||||
|
+mi/rAtgkVhEQzNOdV0KurPUf3fC8P86G0ylJcJ/qsNCZVxRU6R4lvk6ZE6OZY+o
|
||||||
|
hbzgj1M9yd/jY1d9Qcua9v8EoZxyp7sgWMf++/DxrpPvcgQTlNNRV5rX/aDz8uL4
|
||||||
|
GnZrkyLA+/0WFn/zAV7OjCw2FXsCgYEA02kxcuU+ldNkgHl7YrEl0tlWscfbzm10
|
||||||
|
fRqMzuyyRyRgPEgKAIKExI0OVuwmyWvCFTbi8IOpZs/jtG3+r83RFY9VA0r0g3ch
|
||||||
|
jilCaI+2P1ZYm0UAQCyVLCjtVLIZu4Z/h8TctHHDXUjy18xDdLNMTs7hIcbuH85Q
|
||||||
|
hpzfcMRgmMUCgYEAmw6Ti73hazPeoA4RrwbyRxKeN7LL3NHXA4jl/i2z8qBq5VJo
|
||||||
|
67WmZNc9vj7uKhneSpLnPwEQH5tMCy9RX2J1CSB7aM9k2v7NITQT+Lp+4fssf6uR
|
||||||
|
Pnuz3ZsWbzg4ebOBG2Sjkziaqlrn4YOcb9FpLVyctGeobcxfxatLkH999TcCgYBx
|
||||||
|
PhrHwbZJiSd/jhMipWNuUw8WQckjBQxt6ufb+3vvkbOe9rOs3D0ED87LjsmkAP3A
|
||||||
|
YVsknFIEiX0ebAEN6MCDvPg7wE3Dke++d6lj2v8zZCwoV8ivl3H8apveT1xrT7tG
|
||||||
|
XZQfcATHFklGgNrtSxGn8Tc04ZsyHFCUGrmxbO+VRQKBgE7CUNEDLRD1D34v/rYd
|
||||||
|
e2yAeuQQiiKW1pNACBv6Y+Bc/tftunBh3ekTz5Z4XwRE1RZjdCjmEiT47IWh5mlu
|
||||||
|
cylZTVCkk0RbbRDTA37uw5ggMuNrTy7p9ktC4V1RbfO/yFfu0+R5T4X/n+6UFxu0
|
||||||
|
PQrYxRItI7dWCOyRl1nwUogT
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
@ -38,12 +38,12 @@ tls-listening-port=5349
|
|||||||
# RFC 5780 is supported only by UDP protocol, other protocols
|
# RFC 5780 is supported only by UDP protocol, other protocols
|
||||||
# are listening to that endpoint only for "symmetry".
|
# are listening to that endpoint only for "symmetry".
|
||||||
#
|
#
|
||||||
alt-listening-port=0
|
#alt-listening-port=0
|
||||||
|
|
||||||
# Alternative listening port for TLS and DTLS protocols.
|
# Alternative listening port for TLS and DTLS protocols.
|
||||||
# Default (or zero) value means "TLS listening port plus one".
|
# Default (or zero) value means "TLS listening port plus one".
|
||||||
#
|
#
|
||||||
alt-tls-listening-port=0
|
#alt-tls-listening-port=0
|
||||||
|
|
||||||
# Listener IP address of relay server. Multiple listeners can be specified.
|
# Listener IP address of relay server. Multiple listeners can be specified.
|
||||||
# If no IP(s) specified in the config file or in the command line options,
|
# If no IP(s) specified in the config file or in the command line options,
|
||||||
@ -123,6 +123,8 @@ alt-tls-listening-port=0
|
|||||||
#
|
#
|
||||||
#external-ip=60.70.80.91/172.17.19.101
|
#external-ip=60.70.80.91/172.17.19.101
|
||||||
#external-ip=60.70.80.92/172.17.19.102
|
#external-ip=60.70.80.92/172.17.19.102
|
||||||
|
#external-ip=60.70.80.92/172.17.19.102
|
||||||
|
external-ip=193.224.22.37
|
||||||
|
|
||||||
|
|
||||||
# Number of the relay threads to handle the established connections
|
# Number of the relay threads to handle the established connections
|
||||||
@ -167,7 +169,7 @@ fingerprint
|
|||||||
# Uncomment to use long-term credential mechanism.
|
# Uncomment to use long-term credential mechanism.
|
||||||
# By default no credentials mechanism is used (any user allowed).
|
# By default no credentials mechanism is used (any user allowed).
|
||||||
#
|
#
|
||||||
#lt-cred-mech
|
lt-cred-mech
|
||||||
|
|
||||||
# This option is opposite to lt-cred-mech.
|
# This option is opposite to lt-cred-mech.
|
||||||
# (TURN Server with no-auth option allows anonymous access).
|
# (TURN Server with no-auth option allows anonymous access).
|
||||||
@ -279,6 +281,8 @@ fingerprint
|
|||||||
#
|
#
|
||||||
#psql-userdb="host=<host> dbname=<database-name> user=<database-user> password=<database-user-password> connect_timeout=30"
|
#psql-userdb="host=<host> dbname=<database-name> user=<database-user> password=<database-user-password> connect_timeout=30"
|
||||||
|
|
||||||
|
#psql-userdb="host=postgresql dbname=coturn user=coturn password=CHANGE_ME connect_timeout=30"
|
||||||
|
|
||||||
# MySQL database connection string in the case that we are using MySQL
|
# MySQL database connection string in the case that we are using MySQL
|
||||||
# as the user database.
|
# as the user database.
|
||||||
# This database can be used for long-term credential mechanism
|
# This database can be used for long-term credential mechanism
|
||||||
@ -293,6 +297,8 @@ fingerprint
|
|||||||
#
|
#
|
||||||
#mysql-userdb="host=<host> dbname=<database-name> user=<database-user> password=<database-user-password> port=<port> connect_timeout=<seconds> read_timeout=<seconds>"
|
#mysql-userdb="host=<host> dbname=<database-name> user=<database-user> password=<database-user-password> port=<port> connect_timeout=<seconds> read_timeout=<seconds>"
|
||||||
|
|
||||||
|
mysql-userdb="host=mysql dbname=coturn user=coturn password=CHANGE_ME port=3306 connect_timeout=10 read_timeout=10"
|
||||||
|
|
||||||
# If you want to use in the MySQL connection string the password in encrypted format,
|
# If you want to use in the MySQL connection string the password in encrypted format,
|
||||||
# then set in this option the MySQL password encryption secret key file.
|
# then set in this option the MySQL password encryption secret key file.
|
||||||
#
|
#
|
||||||
@ -311,6 +317,9 @@ fingerprint
|
|||||||
#
|
#
|
||||||
#mongo-userdb="mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]"
|
#mongo-userdb="mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]"
|
||||||
|
|
||||||
|
#mongo-userdb="mongodb://coturn:CHANGE_ME@mongodb/coturn"
|
||||||
|
#mongo-userdb="mongodb://mongodb/coturn"
|
||||||
|
|
||||||
# Redis database connection string in the case that we are using Redis
|
# Redis database connection string in the case that we are using Redis
|
||||||
# as the user database.
|
# as the user database.
|
||||||
# This database can be used for long-term credential mechanism
|
# This database can be used for long-term credential mechanism
|
||||||
@ -319,6 +328,8 @@ fingerprint
|
|||||||
#
|
#
|
||||||
#redis-userdb="ip=<ip-address> dbname=<database-number> password=<database-user-password> port=<port> connect_timeout=<seconds>"
|
#redis-userdb="ip=<ip-address> dbname=<database-number> password=<database-user-password> port=<port> connect_timeout=<seconds>"
|
||||||
|
|
||||||
|
#redis-userdb="ip=redis dbname=2 password=CHANGE_ME connect_timeout=30"
|
||||||
|
|
||||||
# Redis status and statistics database connection string, if used (default - empty, no Redis stats DB used).
|
# Redis status and statistics database connection string, if used (default - empty, no Redis stats DB used).
|
||||||
# This database keeps allocations status information, and it can be also used for publishing
|
# This database keeps allocations status information, and it can be also used for publishing
|
||||||
# and delivering traffic and allocation event notifications.
|
# and delivering traffic and allocation event notifications.
|
||||||
@ -327,6 +338,8 @@ fingerprint
|
|||||||
#
|
#
|
||||||
#redis-statsdb="ip=<ip-address> dbname=<database-number> password=<database-user-password> port=<port> connect_timeout=<seconds>"
|
#redis-statsdb="ip=<ip-address> dbname=<database-number> password=<database-user-password> port=<port> connect_timeout=<seconds>"
|
||||||
|
|
||||||
|
#redis-statsdb="ip=redis dbname=2 password=CHANGE_ME connect_timeout=30"
|
||||||
|
|
||||||
# The default realm to be used for the users when no explicit
|
# The default realm to be used for the users when no explicit
|
||||||
# origin/realm relationship was found in the database, or if the TURN
|
# origin/realm relationship was found in the database, or if the TURN
|
||||||
# server is not using any database (just the commands-line settings
|
# server is not using any database (just the commands-line settings
|
||||||
@ -337,6 +350,7 @@ fingerprint
|
|||||||
# If domain name is empty string, or '(None)', then it is initialized to am empty string.
|
# If domain name is empty string, or '(None)', then it is initialized to am empty string.
|
||||||
#
|
#
|
||||||
#realm=mycompany.org
|
#realm=mycompany.org
|
||||||
|
realm=example.org
|
||||||
|
|
||||||
# The flag that sets the origin consistency
|
# The flag that sets the origin consistency
|
||||||
# check: across the session, all requests must have the same
|
# check: across the session, all requests must have the same
|
||||||
@ -437,6 +451,7 @@ fingerprint
|
|||||||
# configuration file.
|
# configuration file.
|
||||||
#
|
#
|
||||||
#cert=/usr/local/etc/turn_server_cert.pem
|
#cert=/usr/local/etc/turn_server_cert.pem
|
||||||
|
cert=/etc/ssl/certs/cert.pem
|
||||||
|
|
||||||
# Private key file.
|
# Private key file.
|
||||||
# Use an absolute path or path relative to the
|
# Use an absolute path or path relative to the
|
||||||
@ -444,6 +459,7 @@ fingerprint
|
|||||||
# Use PEM file format.
|
# Use PEM file format.
|
||||||
#
|
#
|
||||||
#pkey=/usr/local/etc/turn_server_pkey.pem
|
#pkey=/usr/local/etc/turn_server_pkey.pem
|
||||||
|
pkey=/etc/ssl/private/privkey.pem
|
||||||
|
|
||||||
# Private key file password, if it is in encoded format.
|
# Private key file password, if it is in encoded format.
|
||||||
# This option has no default value.
|
# This option has no default value.
|
||||||
@ -657,6 +673,7 @@ cli-port=5766
|
|||||||
# Or unsecure form for the same password:
|
# Or unsecure form for the same password:
|
||||||
#
|
#
|
||||||
#cli-password=qwerty
|
#cli-password=qwerty
|
||||||
|
cli-password=CHANGE_ME
|
||||||
|
|
||||||
# Server relay. NON-STANDARD AND DANGEROUS OPTION.
|
# Server relay. NON-STANDARD AND DANGEROUS OPTION.
|
||||||
# Only for those applications when we want to run
|
# Only for those applications when we want to run
|
||||||
3
docker/cp-schema.sh
Executable file
3
docker/cp-schema.sh
Executable file
@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
cp ../turndb/schema.sql mysql/
|
||||||
|
cp ../turndb/schema.sql postgresql/
|
||||||
108
docker/docker-compose-all.yml
Normal file
108
docker/docker-compose-all.yml
Normal file
@ -0,0 +1,108 @@
|
|||||||
|
version: "3"
|
||||||
|
services:
|
||||||
|
|
||||||
|
# MySQL mariadb
|
||||||
|
mysql:
|
||||||
|
build:
|
||||||
|
context: ./mysql
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- mysql-data:/var/lib/mysql/data
|
||||||
|
env_file:
|
||||||
|
- mysql/mysql.env
|
||||||
|
networks:
|
||||||
|
- backend
|
||||||
|
|
||||||
|
# PostgreSQL
|
||||||
|
postgresql:
|
||||||
|
build:
|
||||||
|
context: ./postgresql
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- postgresql-data:/var/lib/postgresql/data
|
||||||
|
env_file:
|
||||||
|
- postgresql/postgresql.env
|
||||||
|
networks:
|
||||||
|
- backend
|
||||||
|
|
||||||
|
# Redis
|
||||||
|
redis:
|
||||||
|
build:
|
||||||
|
context: ./redis
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- redis-data:/data
|
||||||
|
env_file:
|
||||||
|
- redis/redis.env
|
||||||
|
networks:
|
||||||
|
- backend
|
||||||
|
|
||||||
|
# MongoDB
|
||||||
|
mongodb:
|
||||||
|
image: mongo
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- mongodb-data:/data/db
|
||||||
|
env_file:
|
||||||
|
- mongodb/mongodb.env
|
||||||
|
networks:
|
||||||
|
- backend
|
||||||
|
|
||||||
|
|
||||||
|
# coTURN
|
||||||
|
coturn:
|
||||||
|
build:
|
||||||
|
context: ./coturn
|
||||||
|
restart: always
|
||||||
|
volumes:
|
||||||
|
- ${PWD}/coturn/turnserver.conf:/etc/turnserver.conf
|
||||||
|
- ${PWD}/coturn/privkey.pem:/etc/ssl/private/privkey.pem
|
||||||
|
- ${PWD}/coturn/cert.pem:/etc/ssl/certs/cert.pem
|
||||||
|
ports:
|
||||||
|
## STUN/TURN
|
||||||
|
- "3478:3478"
|
||||||
|
- "3478:3478/udp"
|
||||||
|
- "3479:3479"
|
||||||
|
- "3479:3479/udp"
|
||||||
|
- "80:80"
|
||||||
|
- "80:80/udp"
|
||||||
|
## STUN/TURN SSL
|
||||||
|
- "5349:5349"
|
||||||
|
- "5349:5349/udp"
|
||||||
|
- "5350:5350"
|
||||||
|
- "5350:5350/udp"
|
||||||
|
- "443:443"
|
||||||
|
- "443:443/udp"
|
||||||
|
# Relay Ports
|
||||||
|
# - "49152-65535:49152-65535"
|
||||||
|
# - "49152-65535:49152-65535/udp"
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- backend
|
||||||
|
depends_on:
|
||||||
|
- mysql
|
||||||
|
- postgresql
|
||||||
|
- redis
|
||||||
|
- mongodb
|
||||||
|
env_file:
|
||||||
|
- coturn/coturn.env
|
||||||
|
# DB
|
||||||
|
- mysql/mysql.env
|
||||||
|
- postgresql/postgresql.env
|
||||||
|
- redis/redis.env
|
||||||
|
- mongodb/mongodb.env
|
||||||
|
volumes:
|
||||||
|
mysql-data:
|
||||||
|
postgresql-data:
|
||||||
|
redis-data:
|
||||||
|
mongodb-data:
|
||||||
|
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
driver: bridge
|
||||||
|
ipam:
|
||||||
|
driver: default
|
||||||
|
config:
|
||||||
|
- subnet: 172.16.238.0/24
|
||||||
|
backend:
|
||||||
|
internal: true
|
||||||
63
docker/docker-compose-mongodb.yml
Normal file
63
docker/docker-compose-mongodb.yml
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
version: "3"
|
||||||
|
services:
|
||||||
|
|
||||||
|
# MongoDB
|
||||||
|
mongodb:
|
||||||
|
image: mongo
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- mongodb-data:/data/db
|
||||||
|
env_file:
|
||||||
|
- mongodb/mongodb.env
|
||||||
|
networks:
|
||||||
|
- backend
|
||||||
|
|
||||||
|
|
||||||
|
# coTURN
|
||||||
|
coturn:
|
||||||
|
build:
|
||||||
|
context: ./coturn
|
||||||
|
restart: always
|
||||||
|
volumes:
|
||||||
|
- ${PWD}/coturn/turnserver.conf:/etc/turnserver.conf
|
||||||
|
- ${PWD}/coturn/privkey.pem:/etc/ssl/private/privkey.pem
|
||||||
|
- ${PWD}/coturn/cert.pem:/etc/ssl/certs/cert.pem
|
||||||
|
ports:
|
||||||
|
## STUN/TURN
|
||||||
|
- "3478:3478"
|
||||||
|
- "3478:3478/udp"
|
||||||
|
- "3479:3479"
|
||||||
|
- "3479:3479/udp"
|
||||||
|
- "80:80"
|
||||||
|
- "80:80/udp"
|
||||||
|
## STUN/TURN SSL
|
||||||
|
- "5349:5349"
|
||||||
|
- "5349:5349/udp"
|
||||||
|
- "5350:5350"
|
||||||
|
- "5350:5350/udp"
|
||||||
|
- "443:443"
|
||||||
|
- "443:443/udp"
|
||||||
|
# Relay Ports
|
||||||
|
# - "49152-65535:49152-65535"
|
||||||
|
# - "49152-65535:49152-65535/udp"
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- backend
|
||||||
|
depends_on:
|
||||||
|
- mongodb
|
||||||
|
env_file:
|
||||||
|
- coturn/coturn.env
|
||||||
|
# DB
|
||||||
|
- mongodb/mongodb.env
|
||||||
|
volumes:
|
||||||
|
mongodb-data:
|
||||||
|
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
driver: bridge
|
||||||
|
ipam:
|
||||||
|
driver: default
|
||||||
|
config:
|
||||||
|
- subnet: 172.16.238.0/24
|
||||||
|
backend:
|
||||||
|
internal: true
|
||||||
64
docker/docker-compose-mysql.yml
Normal file
64
docker/docker-compose-mysql.yml
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
version: "3"
|
||||||
|
services:
|
||||||
|
|
||||||
|
# MySQL mariadb
|
||||||
|
mysql:
|
||||||
|
build:
|
||||||
|
context: ./mysql
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- mysql-data:/var/lib/mysql/data
|
||||||
|
env_file:
|
||||||
|
- mysql/mysql.env
|
||||||
|
networks:
|
||||||
|
- backend
|
||||||
|
|
||||||
|
|
||||||
|
# coTURN
|
||||||
|
coturn:
|
||||||
|
build:
|
||||||
|
context: ./coturn
|
||||||
|
restart: always
|
||||||
|
volumes:
|
||||||
|
- ${PWD}/coturn/turnserver.conf:/etc/turnserver.conf
|
||||||
|
- ${PWD}/coturn/privkey.pem:/etc/ssl/private/privkey.pem
|
||||||
|
- ${PWD}/coturn/cert.pem:/etc/ssl/certs/cert.pem
|
||||||
|
ports:
|
||||||
|
## STUN/TURN
|
||||||
|
- "3478:3478"
|
||||||
|
- "3478:3478/udp"
|
||||||
|
- "3479:3479"
|
||||||
|
- "3479:3479/udp"
|
||||||
|
- "80:80"
|
||||||
|
- "80:80/udp"
|
||||||
|
## STUN/TURN SSL
|
||||||
|
- "5349:5349"
|
||||||
|
- "5349:5349/udp"
|
||||||
|
- "5350:5350"
|
||||||
|
- "5350:5350/udp"
|
||||||
|
- "443:443"
|
||||||
|
- "443:443/udp"
|
||||||
|
# Relay Ports
|
||||||
|
# - "49152-65535:49152-65535"
|
||||||
|
# - "49152-65535:49152-65535/udp"
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- backend
|
||||||
|
depends_on:
|
||||||
|
- mysql
|
||||||
|
env_file:
|
||||||
|
- coturn/coturn.env
|
||||||
|
# DB
|
||||||
|
- mysql/mysql.env
|
||||||
|
volumes:
|
||||||
|
mysql-data:
|
||||||
|
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
driver: bridge
|
||||||
|
ipam:
|
||||||
|
driver: default
|
||||||
|
config:
|
||||||
|
- subnet: 172.16.238.0/24
|
||||||
|
backend:
|
||||||
|
internal: true
|
||||||
64
docker/docker-compose-postgresql.yml
Normal file
64
docker/docker-compose-postgresql.yml
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
version: "3"
|
||||||
|
services:
|
||||||
|
|
||||||
|
# PostgreSQL
|
||||||
|
postgresql:
|
||||||
|
build:
|
||||||
|
context: ./postgresql
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- postgresql-data:/var/lib/postgresql/data
|
||||||
|
env_file:
|
||||||
|
- postgresql/postgresql.env
|
||||||
|
networks:
|
||||||
|
- backend
|
||||||
|
|
||||||
|
|
||||||
|
# coTURN
|
||||||
|
coturn:
|
||||||
|
build:
|
||||||
|
context: ./coturn
|
||||||
|
restart: always
|
||||||
|
volumes:
|
||||||
|
- ${PWD}/coturn/turnserver.conf:/etc/turnserver.conf
|
||||||
|
- ${PWD}/coturn/privkey.pem:/etc/ssl/private/privkey.pem
|
||||||
|
- ${PWD}/coturn/cert.pem:/etc/ssl/certs/cert.pem
|
||||||
|
ports:
|
||||||
|
## STUN/TURN
|
||||||
|
- "3478:3478"
|
||||||
|
- "3478:3478/udp"
|
||||||
|
- "3479:3479"
|
||||||
|
- "3479:3479/udp"
|
||||||
|
- "80:80"
|
||||||
|
- "80:80/udp"
|
||||||
|
## STUN/TURN SSL
|
||||||
|
- "5349:5349"
|
||||||
|
- "5349:5349/udp"
|
||||||
|
- "5350:5350"
|
||||||
|
- "5350:5350/udp"
|
||||||
|
- "443:443"
|
||||||
|
- "443:443/udp"
|
||||||
|
# Relay Ports
|
||||||
|
# - "49152-65535:49152-65535"
|
||||||
|
# - "49152-65535:49152-65535/udp"
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- backend
|
||||||
|
depends_on:
|
||||||
|
- postgresql
|
||||||
|
env_file:
|
||||||
|
- coturn/coturn.env
|
||||||
|
# DB
|
||||||
|
- postgresql/postgresql.env
|
||||||
|
volumes:
|
||||||
|
postgresql-data:
|
||||||
|
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
driver: bridge
|
||||||
|
ipam:
|
||||||
|
driver: default
|
||||||
|
config:
|
||||||
|
- subnet: 172.16.238.0/24
|
||||||
|
backend:
|
||||||
|
internal: true
|
||||||
64
docker/docker-compose-redis.yml
Normal file
64
docker/docker-compose-redis.yml
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
version: "3"
|
||||||
|
services:
|
||||||
|
|
||||||
|
# Redis
|
||||||
|
redis:
|
||||||
|
build:
|
||||||
|
context: ./redis
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- redis-data:/data
|
||||||
|
env_file:
|
||||||
|
- redis/redis.env
|
||||||
|
networks:
|
||||||
|
- backend
|
||||||
|
|
||||||
|
|
||||||
|
# coTURN
|
||||||
|
coturn:
|
||||||
|
build:
|
||||||
|
context: ./coturn
|
||||||
|
restart: always
|
||||||
|
volumes:
|
||||||
|
- ${PWD}/coturn/turnserver.conf:/etc/turnserver.conf
|
||||||
|
- ${PWD}/coturn/privkey.pem:/etc/ssl/private/privkey.pem
|
||||||
|
- ${PWD}/coturn/cert.pem:/etc/ssl/certs/cert.pem
|
||||||
|
ports:
|
||||||
|
## STUN/TURN
|
||||||
|
- "3478:3478"
|
||||||
|
- "3478:3478/udp"
|
||||||
|
- "3479:3479"
|
||||||
|
- "3479:3479/udp"
|
||||||
|
- "80:80"
|
||||||
|
- "80:80/udp"
|
||||||
|
## STUN/TURN SSL
|
||||||
|
- "5349:5349"
|
||||||
|
- "5349:5349/udp"
|
||||||
|
- "5350:5350"
|
||||||
|
- "5350:5350/udp"
|
||||||
|
- "443:443"
|
||||||
|
- "443:443/udp"
|
||||||
|
# Relay Ports
|
||||||
|
# - "49152-65535:49152-65535"
|
||||||
|
# - "49152-65535:49152-65535/udp"
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- backend
|
||||||
|
depends_on:
|
||||||
|
- redis
|
||||||
|
env_file:
|
||||||
|
- coturn/coturn.env
|
||||||
|
# DB
|
||||||
|
- redis/redis.env
|
||||||
|
volumes:
|
||||||
|
redis-data:
|
||||||
|
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
driver: bridge
|
||||||
|
ipam:
|
||||||
|
driver: default
|
||||||
|
config:
|
||||||
|
- subnet: 172.16.238.0/24
|
||||||
|
backend:
|
||||||
|
internal: true
|
||||||
@ -1,77 +0,0 @@
|
|||||||
version: "3"
|
|
||||||
services:
|
|
||||||
|
|
||||||
# MySQL mariadb
|
|
||||||
mariadb:
|
|
||||||
image: mariadb
|
|
||||||
restart: unless-stopped
|
|
||||||
env_file: env/mysql.env
|
|
||||||
networks:
|
|
||||||
- backend
|
|
||||||
|
|
||||||
# PostgreSQL
|
|
||||||
postgresql:
|
|
||||||
image: postgresql
|
|
||||||
restart: unless-stopped
|
|
||||||
env_file: env/postgresql.env
|
|
||||||
networks:
|
|
||||||
- backend
|
|
||||||
|
|
||||||
# Redis
|
|
||||||
redis:
|
|
||||||
image: redis
|
|
||||||
restart: unless-stopped
|
|
||||||
env_file: env/redis.env
|
|
||||||
networks:
|
|
||||||
- backend
|
|
||||||
|
|
||||||
# MongoDB
|
|
||||||
mongodb:
|
|
||||||
image: mongodb
|
|
||||||
restart: unless-stopped
|
|
||||||
env_file: env/mongodb.env
|
|
||||||
networks:
|
|
||||||
- backend
|
|
||||||
|
|
||||||
|
|
||||||
# coTURN
|
|
||||||
coturn:
|
|
||||||
image: coturn
|
|
||||||
restart: unless-stopped
|
|
||||||
ports:
|
|
||||||
## STUN/TURN
|
|
||||||
- "3478"
|
|
||||||
- "3478/udp"
|
|
||||||
- "3479"
|
|
||||||
- "3479/udp"
|
|
||||||
- "80"
|
|
||||||
- "80/udp"
|
|
||||||
## STUN/TURN SSL
|
|
||||||
- "5349"
|
|
||||||
- "5349/udp"
|
|
||||||
- "5350"
|
|
||||||
- "5350/udp"
|
|
||||||
- "443"
|
|
||||||
- "443/udp"
|
|
||||||
# Relay Ports
|
|
||||||
- "49152-65535"
|
|
||||||
- "49152-65535/udp"
|
|
||||||
networks:
|
|
||||||
- frontend
|
|
||||||
- backend
|
|
||||||
depends_on:
|
|
||||||
- mysql
|
|
||||||
- postgresql
|
|
||||||
- redis
|
|
||||||
- mongodb
|
|
||||||
env_file:
|
|
||||||
- env/coturn.env
|
|
||||||
# DB
|
|
||||||
- env/mysql.env
|
|
||||||
- env/postresql.env
|
|
||||||
- env/redis.env
|
|
||||||
- env/mongodb.env
|
|
||||||
|
|
||||||
networks:
|
|
||||||
frontend:
|
|
||||||
backend:
|
|
||||||
3
docker/mongodb/mongodb.env
Normal file
3
docker/mongodb/mongodb.env
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
#MONGO_INITDB_ROOT_USERNAME=coturn
|
||||||
|
#MONGO_INITDB_ROOT_PASSWORD=CHANGE_ME
|
||||||
|
#MONGO_INITDB_DATABASE=coturn
|
||||||
6
docker/mysql/Dockerfile
Normal file
6
docker/mysql/Dockerfile
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
### init db with coturn schema
|
||||||
|
FROM mariadb
|
||||||
|
|
||||||
|
ADD init-coturn-db.sql /docker-entrypoint-initdb.d
|
||||||
|
|
||||||
|
ADD schema.sql /docker-entrypoint-initdb.d
|
||||||
1
docker/mysql/init-coturn-db.sql
Normal file
1
docker/mysql/init-coturn-db.sql
Normal file
@ -0,0 +1 @@
|
|||||||
|
ALTER DATABASE coturn CHARACTER SET latin1;
|
||||||
6
docker/mysql/mysql.env
Normal file
6
docker/mysql/mysql.env
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
MYSQL_ROOT_PASSWORD=CHANGE_ME
|
||||||
|
|
||||||
|
MYSQL_USER=coturn
|
||||||
|
MYSQL_PASSWORD=CHANGE_ME
|
||||||
|
MYSQL_DATABASE=coturn
|
||||||
|
|
||||||
55
docker/mysql/schema.sql
Normal file
55
docker/mysql/schema.sql
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
|
||||||
|
CREATE TABLE turnusers_lt (
|
||||||
|
realm varchar(127) default '',
|
||||||
|
name varchar(512),
|
||||||
|
hmackey char(128),
|
||||||
|
PRIMARY KEY (realm,name)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE turn_secret (
|
||||||
|
realm varchar(127) default '',
|
||||||
|
value varchar(256),
|
||||||
|
primary key (realm,value)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE allowed_peer_ip (
|
||||||
|
realm varchar(127) default '',
|
||||||
|
ip_range varchar(256),
|
||||||
|
primary key (realm,ip_range)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE denied_peer_ip (
|
||||||
|
realm varchar(127) default '',
|
||||||
|
ip_range varchar(256),
|
||||||
|
primary key (realm,ip_range)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE turn_origin_to_realm (
|
||||||
|
origin varchar(127),
|
||||||
|
realm varchar(127),
|
||||||
|
primary key (origin)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE turn_realm_option (
|
||||||
|
realm varchar(127) default '',
|
||||||
|
opt varchar(32),
|
||||||
|
value varchar(128),
|
||||||
|
primary key (realm,opt)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE oauth_key (
|
||||||
|
kid varchar(128),
|
||||||
|
ikm_key varchar(256),
|
||||||
|
timestamp bigint default 0,
|
||||||
|
lifetime integer default 0,
|
||||||
|
as_rs_alg varchar(64) default '',
|
||||||
|
realm varchar(127),
|
||||||
|
primary key (kid)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE admin_user (
|
||||||
|
name varchar(32),
|
||||||
|
realm varchar(127),
|
||||||
|
password varchar(127),
|
||||||
|
primary key (name)
|
||||||
|
);
|
||||||
4
docker/postgresql/Dockerfile
Normal file
4
docker/postgresql/Dockerfile
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
### init db with coturn schema
|
||||||
|
FROM postgres
|
||||||
|
|
||||||
|
ADD schema.sql /docker-entrypoint-initdb.d
|
||||||
3
docker/postgresql/postgresql.env
Normal file
3
docker/postgresql/postgresql.env
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
POSTGRES_USER=coturn
|
||||||
|
POSTGRES_PASSWORD=CHANGE_ME
|
||||||
|
POSTGRES_DB=coturn
|
||||||
55
docker/postgresql/schema.sql
Normal file
55
docker/postgresql/schema.sql
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
|
||||||
|
CREATE TABLE turnusers_lt (
|
||||||
|
realm varchar(127) default '',
|
||||||
|
name varchar(512),
|
||||||
|
hmackey char(128),
|
||||||
|
PRIMARY KEY (realm,name)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE turn_secret (
|
||||||
|
realm varchar(127) default '',
|
||||||
|
value varchar(256),
|
||||||
|
primary key (realm,value)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE allowed_peer_ip (
|
||||||
|
realm varchar(127) default '',
|
||||||
|
ip_range varchar(256),
|
||||||
|
primary key (realm,ip_range)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE denied_peer_ip (
|
||||||
|
realm varchar(127) default '',
|
||||||
|
ip_range varchar(256),
|
||||||
|
primary key (realm,ip_range)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE turn_origin_to_realm (
|
||||||
|
origin varchar(127),
|
||||||
|
realm varchar(127),
|
||||||
|
primary key (origin)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE turn_realm_option (
|
||||||
|
realm varchar(127) default '',
|
||||||
|
opt varchar(32),
|
||||||
|
value varchar(128),
|
||||||
|
primary key (realm,opt)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE oauth_key (
|
||||||
|
kid varchar(128),
|
||||||
|
ikm_key varchar(256),
|
||||||
|
timestamp bigint default 0,
|
||||||
|
lifetime integer default 0,
|
||||||
|
as_rs_alg varchar(64) default '',
|
||||||
|
realm varchar(127),
|
||||||
|
primary key (kid)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE admin_user (
|
||||||
|
name varchar(32),
|
||||||
|
realm varchar(127),
|
||||||
|
password varchar(127),
|
||||||
|
primary key (name)
|
||||||
|
);
|
||||||
6
docker/redis/Dockerfile
Normal file
6
docker/redis/Dockerfile
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
### init db with coturn schema
|
||||||
|
FROM redis
|
||||||
|
|
||||||
|
COPY redis.conf /usr/local/etc/redis/redis.conf
|
||||||
|
CMD [ "redis-server", "/usr/local/etc/redis/redis.conf" ]
|
||||||
|
|
||||||
3
docker/redis/redis.conf
Normal file
3
docker/redis/redis.conf
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
timeout 0
|
||||||
|
tcp-keepalive 60
|
||||||
|
requirepass CHANGE_ME
|
||||||
0
docker/redis/redis.env
Normal file
0
docker/redis/redis.env
Normal file
Loading…
Reference in New Issue
Block a user