docker 初识
前言
docker 平台及服务(pass)的产品,它基于操作系统虚拟化技术,将软件与其依赖项打包为容器。托管容器的软件称为Docker引擎。Docker能够帮助开发者在轻量级容器中自动部署应用程序,使得不同容器中的应用程序彼此隔离,高效工作
一、安装
,查看是否已安装(返回版本信息表示已安装)
docker --version / systemctl status docker
,卸载已存在的docker环境及扩展包(docker存在才执行)
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
docker-ce
,更新yum 包
sudo yum update
,下载docker所用的包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
,添加docker存储库
官方
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
阿里云
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
写入配置文件
sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
更新缓存
yum makecache fast
,docker 安装
sudo yum install docker-ce
,docker 镜像代理配置
注:每次修改后都需要加载配置
systemctl daemon-reload
systemctl restart docker
修改文件daemon.json,没有的话新建
vim /etc/docker/daemon.json
{
"registry-mirrors":[
// 国内镜像
"https://dockerhub.icu"
// 官方镜像
]
}
二、常用命令
1、启停相关
,启动
sytemctl start docker
,停止
systemctl stop docker
,重启
systemctl restart docker
查看状态
systemctl status docker
2,docker命令
,查看镜像
docker images
,拉取镜像
docker pull image_name
,删除镜像 (-f 表示强制删除正在使用的镜像)
docker rmi [-f] image_name
,查看容器信息
docker inspect container_id
,查看正在运行的容器
docker ps
,查看所有容器
docker ps -a
,容器暂停
docker stop container_id
,容器删除
docker rm container_id
,容器启动
docker start container_id
,查看容器日志
docker logs container_id
,容器创建
docker run 【options】image_id / image_name
options:
-d -- 后台运行
-p -- 指定端口【宿主机:虚拟机】
-v -- 目录映射【宿主机:虚拟机】
-e -- 向容器内传递环境变量
--name 指定容器名称
--restart=always 跟随容器启动
--platform 指定镜像所在的目标平台
--privileged=true 容器内拥有root权限
,镜像制作
dockerfile
三、镜像制作
1、关键词
,FROM
指定基础镜像
,WORKDIR
工作目录指定
,CMD
设置默认命令
,RUN
在容器内运行指定的命令
,ENV
设置环境变量
,EXPOSE
设置镜像开放的端口
、常遇问题
1、启停相关
docker pull 镜像超时