docker
centos7安装docker
(docker:一个包括软件及其运行环境的容器,防止代码“水土不服”)
使用root权限更新yum包
1
2
3注意
yum -y update:升级所有包同时也升级软件和系统内核;
yum -y upgrade:只升级所有包,不升级软件和系统内核卸载旧版本(如果之前安装过的话)
1
yum remove docker docker-common docker-selinux docker-engine
安装需要的软件包, yum-util 提供yum-config-manager功能,另两个是devicemapper驱动依赖
1
yum install -y yum-utils device-mapper-persistent-data lvm2
设置 yum 源
1
2
3yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo(中央仓库)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo(阿里仓库)安装docker
1
yum install -y docker-ce
-y表示安装时所有选项默认Yes
配置docker镜像加速器
阿里云镜像加速器:进入阿里云官网,进入控制台,搜索容器镜像服务,找到镜像加速器。
Docker命令
Docker服务相关命令
启动docker服务
1
systemctl start docker
停止docker服务
1
systemctl stop docker
重启docker服务
1
systemctl restart docker
查看docker服务状态
1
2systemctl status docker
开机启动docker服务
1
systemctl enable docker
Docker镜像相关命令
(菜鸟教程有命令大全)
查看镜像
1
docker images
搜索镜像
1
docker search 镜像名
拉取镜像
1
docker pull 镜像名:版本号 (没有版本号则下载latest)
删除镜像
1
docker rmi 镜像ID 或 镜像名:版本号
镜像ID通过docker image查看,rmi 即remove image
Docker容器相关命令
查看容器
1
2docker ps //显示正在运行的容器
docker ps -a //显示历史容器创建容器
1
docker run -it --name=容器名 选择的镜像:TAG(即版本) /bin/bash
i:保持容器一直运行
t: 给容器分配一个终端,用于接收命令
d:后台创建容器,不会立即进入,需要通过命令进入容器,并且exit退出后不会关闭容器
进入容器
1
2
3
4
5docker exec -it 容器名 /bin/bash
+ 启动容器
```javascript
docker start 容器名停止容器
1
docker stop 容器名
删除容器
1
docker rm 容器名或容器ID
运行中的容器无法删除
查看容器信息
1
docker inspect
Docker容器的数据卷
数据卷概念和作用
- 概念
- 数据卷是宿主机的一个目录或文件
- 当容器目录和数据卷目录绑定后,对方的修改会立即同步到双方(可以实现Docker容器和外部机器的文件交换以及容器之间的数据交互)
- 一个数据卷可以被多个容器同时挂载
- 作用
- 容器数据持久化
- 外部机器和容器间的间接通信
- 容器之间数据交换
配置数据卷
创建启动容器时,使用-v参数设置数据卷
1
docker run ... -v 宿主机目录(文件):容器内目录(文件) ...
注意事项:
- 目录必须是绝对路径
- 如果目录不存在,会自动创建
- 可以挂载多个数据卷
Docker私有仓库
私有仓库搭建
拉取私有仓库镜像
1
docker pull registry
启动私有仓库容器
1
docker run -id --name=registry -p 5000:5000 registry
打开浏览器,输入地址http://私有仓库服务器ip:5000/v2/_catalog,看到{“repositories“:[]}表示私有仓库搭建成功
修改daemon.json
1
vim /etc/docker/daemon.json
在上述文件中添加一个key,保存退出。次步用于让docker信任私有仓库地址,注意将私有仓库服务器ip修改为自己私有仓库服务器真实ip
{“insecure-registries”:[“私有仓库服务器ip:5000”]}
重启docker服务
1
2systemctl restart docker
docker start registry
将镜像上传至私有仓库
1 | 1.标记镜像为私有仓库的镜像 |
从私有仓库拉取镜像
1 | 1.拉取镜像 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 WY's blog!