本次安裝的linux版本是centos7.4,docker安裝不依賴任何環境,但是必須要連接網絡,滿足這一點就可以進行docker安裝了。
一、安裝:
1.刪除就版本的docker輸入命令:
yum -y remove docker \
docker-common \
docker-selinux \
docker-engine
2.使用命令查詢docker配置文件包:
find / -name docker并逐個刪除
3.安裝開始,首先安裝所需的軟件包:
yum install -y yum-utils device-mapper-persistent-data lvm2
4.配置軟件源,使用下列命令設置 stable 鏡像倉庫
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
5.更新 yum 軟件包索引
yum makecache fast
6.安裝最新版本的 Docker
yum -y install docker
7.啟動docker
systemctl start docker
二、docker部署mysql
[root@ecs-d2eb-0802001 ~]# docker images
REPOSITORY????????? TAG???????????????? IMAGE ID??????????? CREATED???????????? SIZE
docker.io/tomcat??? latest????????????? 96c4e536d0eb??????? 7 days ago????????? 506 MB
docker.io/centos??? latest????????????? 67fa590cfc1c??????? 8 days ago????????? 202 MB
docker.io/mysql???? latest????????????? 62a9f311b99c??????? 2 weeks ago???????? 445 MB
[root@ecs-d2eb-0802001 ~]# docker run --name docker-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=wzy123 -d mysql
b5bc2e8cbfb1af35583e5ec0c585421e3355c628ab36c4540fc7c1d4d1c5c578
[root@ecs-d2eb-0802001 ~]# docker ps
CONTAINER ID??????? IMAGE?????????????? COMMAND????????????????? CREATED???????????? STATUS????????????? PORTS?????????????????????????????? NAMES
b5bc2e8cbfb1??????? mysql?????????????? "docker-entrypoint..."?? 3 minutes ago?????? Up 3 minutes??????? 0.0.0.0:3306->3306/tcp, 33060/tcp?? docker-mysql
56136c8501dc??????? tomcat:latest?????? "catalina.sh run"??????? 4 hours ago???????? Up 4 hours????????? 0.0.0.0:7890->8080/tcp????????????? ecstatic_edison
[root@ecs-d2eb-0802001 ~]# docker exec -it docker-mysql bash
root@b5bc2e8cbfb1:/# mysql -uroot -p
mysql> alter user 'root'@'%' identified with mysql_native_password by 'root';
工具連接docker里面mysql:
三、利用 Docker 備份、遷移數據庫
我們可以通過以下命令將容器保存為鏡像
[root@ecs-d2eb-0802001 ~]# docker commit docker-mysql mysqlback
sha256:79a351c6cd4103f8b66cdb7ee8c63c6cd993d7240c1a44f7d4e066c2d7074034
鏡像備份
[root@ecs-d2eb-0802001 ~]# docker save -o mysqlback.tar mysqlback
然后執行此命令進行恢復
docker load -i mynginx.tar
-i 輸入的文件
執行后再次查看鏡像,可以看到鏡像已經恢復
?
?
docker導出導入:
[root@ecs-d2eb-0802001 ~]# docker ps
CONTAINER ID??????? IMAGE?????????????? COMMAND????????????????? CREATED???????????? STATUS????????????? PORTS?????????????????????????????? NAMES
b5bc2e8cbfb1??????? mysql?????????????? "docker-entrypoint..."?? About an hour ago?? Up About an hour??? 0.0.0.0:3306->3306/tcp, 33060/tcp?? docker-mysql
56136c8501dc??????? tomcat:latest?????? "catalina.sh run"??????? 5 hours ago???????? Up 5 hours????????? 0.0.0.0:7890->8080/tcp????????????? ecstatic_edison
[root@ecs-d2eb-0802001 ~]# docker export -o mysql.tar docker-mysql
?
[root@ecs-d2eb-0802001 ~]# docker import mysql.tar wzy:imp
sha256:c4dd9cd76f4e91d5f5c2d7cf6d812ec18ecb490bd9f30ff67b259edd7a121fbb