常见关系数据库的docker安装

文章详细介绍了如何使用Docker容器分别部署MySQL、PostgreSQL、Oracle等14种IT数据库,包括环境设置、端口映射和账户信息,以及MongoDB和Elasticsearch的版本差异和配置方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、MySQL数据库

mkdir -p data
docker run -t -d --privileged --name mysql \
	-e MYSQL_USER="test" \
	-e MYSQL_PASSWORD="123456" \
	-e MYSQL_ROOT_PASSWORD="123456" \
	-e MYSQL_ROOT_HOST="%" \
	-v $(pwd)/data:/var/lib/mysql \
	-p 3306:3306 \
	--name mysql mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci

账号:test/123456 和 root/123456

2、PostgreSQL数据库

mkdir -p data
docker run -t -d --privileged --name postgres -e POSTGRES_USER=postgres -e POSTGRES_PASS=123456 -v $(pwd)/data:/var/lib/postgresql -p 5432:5432 kartoza/postgis:11.0-2.5

账号: postgres/123456

3、Oracle数据库

  • oracle-12c
# hostname: localhost
# port: 1521
# sid: xe
# service name: xe
# username: system
# password: oracle

mkdir -p data
docker run -d --name oracle12c -p 8080:8080 -p 1521:1521 -v $(pwd/data:/mnt -e "TZ=Asia/Shanghai" sath89/oracle-12c

账号: system/oracle service name: xe

  • oracle-11g
docker run -d --privileged -p 1521:1521 --name=oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

账号: system/helowin serviceid: helowin

4、SQLServer数据库

mkdir -p data
docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=abc@1234' -p 1433:1433 -v $(pwd)/data:/var/opt/mssql/data/ --name sqlserver -d mcr.microsoft.com/mssql/server:2017-latest

说明: 密码需要满足要求,否则报错:

ERROR: Unable to set system administrator password: Password validation failed. The password does not meet SQL Server password policy requirements because it is too short. The password must be at least 8 characters..

账号: sa/abc@1234

5、Sybase数据库

# 
# https://blog.youkuaiyun.com/scp__001/article/details/116694147
#
# SYBASE_USER: tester
# SYBASE_PASSWORD: guest1234
# SYBASE_DB: testdb
# ==========================
# DBA_USER: sa
# DBA_PASSWORD: myPassword
# 

mkdir -p $(pwd)/data
docker run -d --name sybase -p 5000:5000 -v $(pwd)/data:/data:rw  datagrip/sybase

账号: tester/guest1234 和 sa/myPassword

6、DB2数据库

cat sbin/entrypoint.sh 
#!/bin/bash
su - db2inst1 -c "db2start"
nohup /usr/sbin/sshd -D 2>&1 > /dev/null &
su - db2inst1 -c "db2sampl"

while true; do sleep 1000; done
docker run -itd --name db2 --privileged=true \
           -p 50000:50000 \
           -v $(pwd)/sbin/entrypoint.sh:/docker-entrypoint.sh \
           -e "DB2INST1_PASSWORD=Test@123" \
           -e "LICENSE=accept" \
           ibmoms/db2express-c:10.5.0.5-3.10.0 \
           sh /docker-entrypoint.sh

账号: db2inst1/Test@123

7、DM数据库

mkdir -p data
docker run -d --net host --name dm8 -p 5236:5236  -v $(pwd)/data/:/opt/dmdbms inrgihc/dmdb:v8

账号: SYSDBA/SYSDBA

8、Kingbase数据库

需要去官网上下载licence文件

  • v8r6
# 
# https://github.com/chyidl/kingbase-es-v8-r6-docker
#
# jdbc:kingbase8://172.16.1.83:54321/test_database
# user: admin  password: 123456
#
docker run -d --name kingbase -p 54321:54321 -e SYSTEM_USER=admin -e SYSTEM_PWD=123456 -v /home/kingbase/license.dat:/opt/kingbase/Server/bin/license.dat chyiyaqing/kingbase:v8r6
sleep 20
docker cp /root/kingbase/license_18720_0.dat kingbase:/opt/kingbase/license.dat
docker exec -u root -it kingbase bash -c 'chown -R kingbase:kingbase license.dat'
docker restart kingbase
sleep 10
docker exec -u root -it kingbase bash -c 'createdb -U admin test_database'
  • v8r3
# https://toscode.mulanos.cn/rnf/kingbase-es-v8-r3-docker
# 

docker run -d --name kingbase -p 54321:54321 -e SYSTEM_PWD=SYSTEM -v /opt/kingbase/data:/opt/kingbase/data -v /opt/kingbase/license.dat:/opt/kingbase/Server/bin/license.dat kingbase:v8r3

9、OpenGuassM数据库

mkdir -p data
docker run --name opengauss -d --restart always --privileged=true  -e GS_PASSWORD='openGauss@123'  \
    -v $(pwd)/data:/var/lib/opengauss/data -u root -p 15432:5432 \
    opengauss/opengauss:5.0.0

账号: gaussdb/openGauss@123

10、Greenplum数据库

mkdir -p data
docker run -d --name greenplum -p 25432:5432 -v $(pwd)/data:/data  inrgihc/greenplum:6.19.3

账号:gpadmin/greenplum

11、GBase数据库

# DB: gbase
# User: root
# Password: root
# Port: 5258
#

docker run -d --name gbase8a --hostname=gbase8a --privileged=true -p5258:5258 shihd/gbase8a:1.0

账号:root/root

12、hive V2数据库

地址:https://github.com/big-data-europe/docker-hive.git

git clone https://github.com/big-data-europe/docker-hive.git
cd docker-hive/
docker-compose up -d

无需账号

13、polarDB数据库

docker run -d --name polardb -p 8528:8527 polardbx/polardb-x

账号:polardbx_root/123456

14、clickHouse数据库

mkdir -p data/clickhouse/{conf,store,log}

if [ ! -f "data/clickhouse/conf/config.xml" ]; then
 	echo "copy config files ..."
	rm -f data/clickhouse/conf/config.xml
	rm -f data/clickhouse/conf/users.xml
	docker rm -f tmp-ck-server
	docker run --rm -d --name=tmp-ck-server --ulimit nofile=262144:262144 -p 8123:8123 -p 9009:9009 -p 9090:9000 yandex/clickhouse-server:22.1.2.2
	docker cp tmp-ck-server:/etc/clickhouse-server/config.xml $(pwd)/data/clickhouse/conf/config.xml
	docker cp tmp-ck-server:/etc/clickhouse-server/users.xml $(pwd)/data/clickhouse/conf/users.xml
	docker rm -f tmp-ck-server
fi

docker run -d --name=clickhouse -p 8123:8123 -p 9009:9009 -p 9090:9000 --ulimit nofile=262144:262144 \
	-v $(pwd)/data/clickhouse/conf/config.xml:/etc/clickhouse-server/config.xml \
	-v $(pwd)/data/clickhouse/conf/users.xml:/etc/clickhouse-server/users.xml \
	-v $(pwd)/data/clickhouse/log:/var/log/clickhouse-server \
	-v $(pwd)/data/clickhouse/store:/var/lib/clickhouse \
	yandex/clickhouse-server:22.1.2.2

账号:default/(空)

15、informix数据库

docker pull ibmcom/informix-developer-database
docker run -itd --name informix --privileged -p 19088:9088 -p 19089:9089 -p 27017:27017 -p 27018:27018 -p 27883:27883 -e LICENSE=accept ibmcom/informix-developer-database:latest

jdbc连接串:jdbc:informix-sqli://192.168.10.3:19088/sysadmin:INFORMIXSERVER=informix

数据库database可选:sysadmin
默认用户名:informix
默认密码:in4mix
database server:informix

16、Mongo数据库

  • mongo 4.x
mkdir -p data
docker run -itd --name mongo4 -v ${pwd}/data:/data/db -p 27017:27017 mongo:4.4 --auth

# docker exec -it mongo4 mongo admin
# db.createUser({ user:'root',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},'readWriteAnyDatabase']});
# docker restart mongo4 
  • mongo 5.x
mkdir -p data
docker rm -f mongo5
docker run -itd --name mongo5 -v $(pwd)/data:/data/db -p 27017:27017 mongo:5 --auth

# docker exec -it mongo5 mongo admin
# db.createUser({ user:'root',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},'readWriteAnyDatabase']});
# docker restart mongo5

17、ElasticSearch V7数据库

mkdir -p data && chmod 777 -R data
docker run --name elasticsearch -d -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -v $(pwd)/data:/usr/share/elasticsearch/data -p 9200:9200 -p 9300:9300 elasticsearch:7.7.0

18、TDengine数据库

mkdir -p data/{log,taos}
docker run --name tdengine --privileged=true -d \
  -p 6030:6030 -p 6041:6041 -p 6043:6043 -p 6044-6049:6044-6049 -p 6044-6045:6044-6045/udp -p 6060:6060 \
  -v $(pwd)/data/taos:/var/lib/taos  -v $(pwd)/data/log:/var/log/taos \
   tdengine/tdengine:3.3.3.0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值