安装准备
进入docker官网:https://docs.docker.com/
选择下载和安装
选择安装的版本
选择服务器
之后就是跟着命令走了,我把它命令都弄了下来,从头到尾照着执行就完成了。
安装步骤
清除旧版本docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
安装yum-utils包(提供yum-config-manager 实用程序)
sudo yum install -y yum-utils
设置仓库(仓库有多个,选择一个安装就好了)。
// 官方的
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
// 阿里的
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
// 清华大学的
sudo yum-config-manager \
--add-repo \
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
安装 Docker 引擎。安装最新版本的 Docker Engine-Community 和 containerd,或者转到下一步安装特定版本
sudo yum install docker-ce docker-ce-cli containerd.io
到这里基本就安装成功了,接着就是测试一下能否运行。
运行
启动docker服务
sudo systemctl start docker
通过运行hello-world 映像验证 Docker Engine 是否已正确安装
sudo docker run hello-world
配置阿里镜像加速器
为了下载镜像的快一点,可以配置阿里的镜像加速器,登录阿里云平台
直接负责它的代码粘贴运行。
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"insecure-registries": ["harbordev.io:4443"],
"registry-mirrors":["https://mirrors.tuna.tsinghua.edu.cn/"],
"registry-mirrors": ["https://2viruokd.mirror.aliyuncs.com"],
"data-root":"/home/data/docker"
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
registry-mirrors是配置镜像加速器
data-root 是镜像存储位置,存储位置给多一点空间,不然不容易够用,另外不要轻易改变位置,否则镜像可能丢失
到这里就算真正的安装成功了。
关闭docker
关闭docker
sudo systemctl stop docker
如果有以下提示,说明关闭失败。意思是:如果你试图连接到docker socket,而docker服务没有运行,系统将自动启动docker。他会自己重启。
Warning: Stopping docker.service, but it can still be activated by:
docker.socket
解决方案一
你可以删除 /lib/systemd/system/docker.socket
从docker中 docker.service 文件 删除 fd://,即remove -H fd://
解决方案二
如果不想被访问时自动启动服务
输入命令:sudo systemctl stop docker.socket
以下是卸载的部分,不要搞错了哦!
卸载 Docker 引擎
卸载 Docker Engine、CLI 和 Containerd 包
sudo yum remove docker-ce docker-ce-cli containerd.io
主机上的映像、容器、卷或自定义配置文件不会自动删除。删除所有镜像、容器和卷
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
好了,到此结束了,是不是很简单呢。
docker相关命令
#查看已经创建的容器
docker ps -a
#查看已经启动的容器
docker ps -s
#停止运行的容器
docker stop NAMES
#删除容器
docker pa -a /获取容器NAMES
docker rm NAMES
#搜索镜像
docker search <kali>
#拉取镜像
docker pull <ImagesID>
#查看所有镜像
docker images
#删除镜像
docker rmi <imagesID>
#创建镜像(此目录下有Dockerfile)
docker build -t xxx .
#创建容器
docker run -it <imagesID> /bin/bash
## 参数说明如下:
说明
- run通过image创建一个新容器
- start 启动一个容器
- -p 端口映射 本地端口:容器端口
- -it交互模式
#进入容器
docker exec -it <container_ID> /bin/bash
docker attach <container_ID>
## 参数说明如下:
说明
- attach 可以多个窗口链接一个容器
#容器封装为一个新的镜像(保存容器更改)
docker commit -m="xxx" -a="xxx" <imageID> NewName
## 参数说明如下:
说明
- -m:提交的描述信息
- -a:指定镜像作者
关系:
__________________________________
|docker |
|------------------------------ |
| images |
| ------------------------ |
| container |
| ----------------- |
|________________________________|
docker命令来源:https://www.jianshu.com/p/870f48bef25a