Docker 安裝與卸載
當前系統的內核版本是否高於 3.10
uname -r
卸載原來的依賴
yum remove docker docker-common docker-selinux docker-engine
安裝的依賴
yum install -y yum-utils device-mapper-persistent-data lvm2
配置鏡像倉庫
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安裝docker-ce
yum install docker-ce
docker version
卸載
卸載 Docker 軟件包
yum remove docker-ce
刪除鏡像/容器等
rm -rf /var/lib/dock
運行
systemctl 命令是系統服務管理器指令,它是 service 和 chkconfig 兩個命令組合。
查看docker狀態: systemctl status docker
啓動docker: systemctl start docker
停止docker: systemctl stop docker
重啓docker: systemctl restart docker
開機自動啓動docker: systemctl enable docker
操作鏡像
鏡像都是存儲在Docker宿主機的 /var/lib/docker
- 列出docker下的已安裝所有鏡像:docker images
REPOSITORY | TAG | IMAGE ID | CREATED | SIZE |
---|---|---|---|---|
鏡像所在倉庫的名稱 | 鏡像標籤(一般是版本號) | 鏡像ID | 鏡像的創建日期 | 鏡像大小 |
-
只顯示鏡像ID:docker images -q
-
查找鏡像:docker search [OPTIONS] 鏡像名稱‘
NAME | DESCRIPTION | STARS | OFFICIAL | AUTOMATED | |
---|---|---|---|---|---|
倉庫名稱 | 鏡像描述 | 關注度 | 是否官方 | 自動構建,表示該鏡像由Docker Hub自動構建流程創建的 |
–no-trunc 顯示完整的鏡像描述DESCRIPTION:docker search --no-trunc centos
- 加速地址配置
目前國內訪問 Docker HUB 官方的相關鏡像下載比較慢,可以使用國內的一些鏡像加速器
阿里雲容器鏡像服務 :https://cr.console.aliyun.com/cn-hangzhou/instances/repositories ,然後點擊鏡像加速器
跟着上面的命令來
-
拉取鏡像mysql:docker pull 鏡像名:標籤名
docker pull mysql:5.6 -
刪除鏡像:docker rmi 鏡像ID
容器操作
- 查看正在運行容器:docker ps
- 查看所有的容器(啓動與未啓動的容器):docker ps -a
- 查看停止的容器:docker ps -f status=exited
CONTAINER | ID | IMAGE | COMMAND | CREATED | STATUS | NAMES | PORTS |
---|---|---|---|---|---|---|---|
容器 | ID | 鏡像 | 初始命令 | 創建日期 | 容器狀態 | 容器名字 | 端口號 |
- 運行鏡像
docker run [OPTIONS] 鏡像名:標籤名
i 表示交互式運行容器(就是創建容器後,馬上會啓動容器,並進入容器 ),通常與 -t 同時使用 。
t 啓動後會進入其容器命令行, 通常與 -i 同時使用; 加入 -it 兩個參數後,容器創建就能登錄進去。即分配一個僞終端。
–name 爲創建的容器指定一個名稱 。
-d 創建一個守護式容器在後臺運行,並返回容器ID;
這樣創建容器後不會自動登錄容器,如果加 -i 參數,創建後就會運行容器。
-v 表示目錄映射, 格式爲: -p 宿主機目錄:容器目錄
注意:最好做目錄映射,在宿主機上做修改,然後共享到容器上。
-p 表示端口映射,格式爲: -p 宿主機端口:容器端口
-it:運行容器並進入該容器的終端
-id:後臺運行容器
docker start 容器名稱||容器id
RabbitMQ 部署
拉取 RabbitMQ 鏡像
docker pull rabbitmq:management
創建 RabbitMQ 容器
遠程連接端口5672,管理系統訪問端口15672
docker run -id --name=MyRabbitMQ -p 5672:5672 -p 15672:15672 rabbitmq:management
默認用戶名: guest ,密碼也是 guest
記得加安全組,然後 http://ip:15672/ 訪問即可
微服務部署
需要用到maven插件
所以要把maven的bin目錄添加到環境變量
修改宿主機的docker配置,讓其docker服務可以遠程訪問, 暴露的docker服務端口號 2375
vim /lib/systemd/system/docker.service
在 ExecStart= 後添加加配置
-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
systemctl daemon-reload
systemctl restart docker
然後就是安全組的
http://ip:2375/version,出現信息說明成功
Maven 的安裝目錄下的 settings.xml 文件中添加阿里帳號和鏡像固定密碼 (就是上面設置的)
https://cr.console.aliyun.com/cn-hangzhou/instances/credentials
<servers>
<server>
<id>docker-aliyun</id>
<username>xxxxxx</username>
<password>xxxxxx</password>
</server>
</servers>
在生成aliyun的鏡像倉庫
mvn clean package docker:build -DpushImage
‘mvn’ 不是內部或外部命令,也不是可運行的程序
或批處理文件。重啓電腦
待補充