1. 程式人生 > >Docker部署資料庫彙總

Docker部署資料庫彙總

MySQL部署

1.建立一個資料夾用於對映MySQL資料

$ sudo mkdir  /docker/mysql_data -p

2.啟動MySQL容器

$ sudo docker run --name mysql -d \
  --restart always -p 3306:3306 \
  -e MYSQL_ROOT_PASSWORD=123456 \
  -v /docker/mysql_data:/var/lib/mysql \
  mysql:tag 

--name mysql:容器命名為mysql;
-d:後臺執行容器,並返回容器id;
--restart always

:設定容器自啟動,永遠重啟;
-p 13306:3306:將容器的3306埠對映到宿主機的13306埠;
-e MYSQL_ROOT_PASSWORD=123456:設定MySQL的root密碼為123456,該項必須設定,否則容器無法啟動;
-v /docker/mysql_data:/var/lib/mysql:將容器的/var/lib/mysql資料夾對映到宿主機的docker/mysql_data,資料持久化.

Oracle部署

1.建立一個資料夾用於對映Oracle資料

$ sudo mkdir  /docker/oracle_data -p

2.啟動Oracle容器

$ sudo docker run --name oracle -d \
  --restart always -p 11521:1521 \
  -v /docker/oracle_data:/u01/app/oracle \
  sath89/oracle-12c 

-p 11521:1521:將容器的1521埠對映到宿主機的11521埠;
-v /docker/oracle_data:/u01/app/oracle:將容器的/u01/app/oracle資料夾對映到宿主機的/docker/oracle_data,資料持久化;
生成的容器,初始賬號為system,密碼為oracle,sid為xe

SQL Server部署

1.建立一個資料夾用於對映SQL Server資料

$ sudo mkdir  /docker/mssql_data -p

2.啟動SQL Server容器

$ sudo docker run --name mssql -d \
  --restart always -p 11433:1433 \
  -e 'ACCEPT_EULA=Y'
\ -e 'MSSQL_SA_PASSWORD=SQLserverPassword8!' \ -v /docker/mssql_data:/var/opt/mssql \ microsoft/mssql-server-linux:tag

-p 11433:1433:將容器的1433埠對映到宿主機的11433埠;
-v /docker/mssql_data:/var/opt/mssql:將容器的/var/opt/mssql資料夾對映到宿主機的/docker/mssql_data,資料持久化;
-e 'ACCEPT_EULA=Y':同意許可協議,必填;
-e 'MSSQL_SA_PASSWORD=SQLserverPassword8!':設定sa賬戶的密碼,必須包含大小寫字母,數字、特殊字元,否則容器啟動後會停止,必填;
生成的容器,初始賬號為sa,密碼為SQLserverPassword!

PostgreSQL部署

1.建立一個資料夾用於對映SQL Server資料

$ sudo mkdir  /docker/postgres_data -p

2.啟動PostgreSQL容器

$ sudo docker run --name postgres -d \
  --restart always -p 15432:5432 \
  -e POSTGRES_PASSWORD=root \
  -v /docker/postgres_data:/var/lib/postgresql/data/pgdata \
  postgres:tag

-p 15432:5432:將容器的5432埠對映到宿主機的15432埠;
-v /docker/postgres_data:/var/lib/postgresql/data/pgdata:將容器的/var/lib/postgresql/data/pgdata資料夾對映到宿主機的/docker/postgres_data,資料持久化;
-e POSTGRES_PASSWORD=root:設定postgre賬戶密碼,必填;
生成的容器,初始賬號為postgres,密碼為root

MongoDB部署

1.建立一個資料夾用於對映Mongodb資料

$ sudo mkdir  /docker/mongo_data -p

2.啟動MongoDB容器

$ sudo docker run --name mongo -d \
  --restart always -p 27017:27017 \
  -e MONGO_INITDB_ROOT_USERNAME=admin \
  -e MONGO_INITDB_ROOT_PASSWORD=root \
  -v /docker/mongo_data:/data/db \
  mongo:tag --auth --master

-p 27017:27017:將容器的27017埠對映到宿主機的27017埠;
-v /docker/mongo_data:/data/db:將容器的/data/db資料夾對映到宿主機的/docker/mongo_data,資料持久化;
--auth: 開啟認證,如果沒開啟,不需要設定-e MONGO_INITDB_ROOT_USERNAME=admin-e MONGO_INITDB_ROOT_PASSWORD=root
--master:開啟主從複製
生成的容器,初始賬號為admin,密碼為root