Docker 環境配置以及問題解決方案
環境準備
我的服務器是 centos 7
環境
如果CentOS系統內核低於3.10,可以升級軟件包及內核,通過 yum update
升級
Linux系統分為兩種:
RedHat系列:Redhat、Centos、Fedora等
Debian系列:Debian、Ubuntu等
RedHat系列的包管理工具是yum
Debian系列的包管理工具是apt-get
查看系統版本:
cat /proc/version Linux version 3.10.0-1062.1.2.el7.x86_64 ([email protected]) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC) ) #1 SMP Mon Sep 30 14:19:46 UTC 2019
我的系統是Red hat
, 所以使用的包管理工具是yum
查看系統內核
uname -r // 查看系統內核 3.10.0-1062.1.2.el7.x86_64
查看系統配置
cat /etc/os-release // 查看系統配置 NAME="CentOS Linux" VERSION="7 (Core)" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="7" PRETTY_NAME="CentOS Linux 7 (Core)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:7" HOME_URL="https://www.centos.org/" BUG_REPORT_URL="https://bugs.centos.org/" CENTOS_MANTISBT_PROJECT="CentOS-7" CENTOS_MANTISBT_PROJECT_VERSION="7" REDHAT_SUPPORT_PRODUCT="centos" REDHAT_SUPPORT_PRODUCT_VERSION="7"
文檔傳送門:https://docs.docker.com/engine/install/centos/
安裝並運行一個hello-world
步驟
1、卸載舊版本
yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
2、需要的安裝包
yum install -y yum-utils
3、設置鏡像倉庫
yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo // 默認是國外的 http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo // 阿裡雲鏡像地址
4、更新yum
軟件包索引
yum makecache fast
5、安裝docker相關的內容
docker-ce
社區版
ee
企業版
yum install docker-ce docker-ce-cli containerd.io
6、配置阿裡雲鏡像加速
登錄阿裡雲,找到容器鏡像服務,找到自己的鏡像加速器
配置步驟如下
# 1 sudo mkdir -p /etc/docker # 2 編寫配置文件 sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://xxxx.mirror.aliyuncs.com"] } EOF # 3 重新加載配置 sudo systemctl daemon-reload # 4 啟動 sudo systemctl restart docker
7、重新加載配置文件
systemctl daemon-reload
8、啟動
systemctl start docker
9、查看是否啟動成功
docker version
10、hello-world
直接運行run
命令
docker run hello-world
run
命令工作流程圖解
11、查看下載的hello-world鏡像
docker images
卸載docker
# 1. 卸載依賴 yum remove docker-ce docker-ce-cli containerd.io # 2. 刪除目錄 rm -rf /var/lib/docker rm -rf /var/lib/containerd
問題匯總
docker 啟動報錯
Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.
修改/usr/lib/systemd/system/docker.service
錯誤原因:
docker
的socket
配置出現瞭沖突,docker
在運行時的啟動入口文件為:/lib/systemd/system/docker.service
,我們在配置鏡像加速之後又添加瞭一個守護進程文件:/etc/docker/daemon.json
,兩個文件對host
進行瞭配置,發生沖突。
查看報錯詳情 journalctl -xe
failed to start daemon: error initializing graphdriver: /var/lib/docker contains several valid graphdrivers: devicemapper, o
解決辦法:
修改 /etc/docker/daemon.json
增加:
"storage-driver": "overlay2", "storage-opts": [ "overlay2.override_kernel_check=true" ]
常用命令
查看版本 docker -v
設置服務器開機啟動
systemctl enable docker
停止docker
systemctl stop docker
systemctl 方式
# 守護進程重啟 sudo systemctl daemon-reload # 重啟docker服務 sudo systemctl restart docker # 關閉docker sudo systemctl stop docker
到此這篇關於Docker 環境配置以及問題解決方案的文章就介紹到這瞭,更多相關Docker 環境配置內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- CentOS 8安裝Docker的詳細教程
- centos搭建部署docker環境的詳細步驟
- CentOS 8.4安裝Docker的詳細教程
- 通過idea打包項目到docker的操作方法
- Docker安裝阿裡雲服務器和在虛擬機安裝遇到的坑(問題小結)