PostgreSQL

prepare data and config folder

mkdir -p $PWD{/data,/config}
touch $PWD/config/postgresql.conf

run container

docker run --name pgsql17 \
-p 5432:5432 \
-e POSTGRES_PASSWORD=postgresql \
-e PGDATA=/var/lib/postgresql/data/pgdata \
-v $PWD/data:/var/lib/postgresql/data \
-v $PWD/config/postgresql.conf:/usr/share/postgresql/postgresql.conf:rw \
-d bitnami/postgresql:17.4.0
MySQL

prepare data and config folder

mkdir -p mysql8/{config,log,datadir,mysql-files}
touch $PWD/config/my.cnf

run container

docker run --name mysql8 \
--restart always \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=root@0103@, \
-v /etc/localtime:/etc/localtime \
-v $PWD/config:/etc/mysql/conf.d \
-v $PWD/log:/var/log/mysql \
-v $PWD/datadir:/var/lib/mysql \
-v $PWD/mysql-files:/var/lib/mysql-files \
-v $PWD/config/my.cnf:/etc/mysql/my.cnf:rw \
-d mysql:8.0.35
mongo

prepare data and config folder

mkdir -p mongo/{data,log,etc,initdb.d}
touch $PWD/conf/mongod.conf

run container


docker run --name mongo \
-p 27017:27017 \
-e MONGO_INITDB_ROOT_USERNAME=mongoadmin \
-e MONGO_INITDB_ROOT_PASSWORD=secret \
-v $PWD/data:/data/db \
-v $PWD/log:/data/log \
-v $PWD/etc:/etc/mongo \
-v $PWD/initdb.d:docker-entrypoint-initdb.d \
-d mongo:6.0.6 \
--config /etc/mongo/mongod.conf
Redis

prepare data and config folder

mkdir -p redis/{data,config}
touch $PWD/config/redis.conf

run container

podman run -itd \
--name redis7 \
-p 6379:6379 \
-v $PWD/config:/etc/redis \
-v $PWD/data:/data \
redis:7.0.5 \
redis-server /etc/redis/redis.conf
nacos

prepare data and config folder

mkdir -p nacos/{data,conf,logs}

run container

docker run -d \
--name nacos \
-e MODE=standalone \
-p 8848:8848 \
-v $PWD/conf:/home/nacos/conf \
-v $PWD/logs:/home/nacos/logs \
-v $PWD/data:/home/nacos/data \
-v $PWD/init.d:/home/nacos/init.d \
-e MODE=standalone
nacos/nacos-server:v2.2.3
nginx

prepare data and config folder

mkdir -p nginx/{html,logs,conf}
touch $PWD/conf/nginx.conf

run container

docker run --name nginx \
--privileged=true \
-p 80:80 \
-p 8026:8026 \
-v $PWD/html/:/usr/share/nginx/html/ \
-v $PWD/logs/:/var/log/nginx/ \
-v $PWD/conf/:/etc/nginx/ \
-itd nginx
openresty

prepare data and config folder

mkdir -p openresty/{html,logs,conf}
touch $PWD/conf/nginx.conf

run container

docker run -itd \
--name openresty \
--privileged=true \
--restart always \
-p 80:80 \
-p 443:443 \
-v /etc/localtime:/etc/localtime \
-v $PWD/conf/nginx.conf:/usr/local/openresty/nginx/conf/nginx.conf:rw \
-v $PWD/html/:/usr/local/openresty/nginx/html/ \
-v $PWD/logs/:/usr/local/openresty/nginx/logs/ \
openresty/openresty:1.25.3.1-alpine-fat-amd64