docker 常用命令

221 阅读3分钟

1.linux 安装docker

卸载原有的环境: 

 sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

安装对应的依赖环境和镜像地址 

uname -a //3.1以上版本
yum update 
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo //添加阿里云镜像地址,安装会比较快
yum intall -y docker-ce
systemctl start docker //启动守docker护进程 Server端
systemctl enable docker // 可以设置开机启动,不必每次执行启动命令

docker 架构:

docker version //查看docker客户端版本
systemctl start docker //启动docker服务端

docker 是CS架构,此时查看到的是客户端版本,不能链接到Docker daemon

当服务端启动后:可以查看到客户端和服务端信息

运行镜像:

docker run ubuntu:16.04 //镜像:版本

拉取镜像可以采用国内加速器:,通过修改daemon.json文件

配置阿里云加速器:

需要在阿里云网站生成个人加速器:

将生成的地址放入配置文件中,重新启动

systemctl daemon-reload
systemctl restart docker

docker 基本命令:

docker run 会自动下载对应镜像,并运行

-d为后台运行,运行后不会进入容器目录

容器生命管理:

docker run 命令相当于create,start,两个命令,先从镜像中创建一个容器,执行start 运行容器

--restart=always //run 命令后面参数挂了会自动重启

容器管理:

镜像仓库 

docker build --platform linux/amd64 -t ubuntu:v18.04 . //--platform 指定打包特定平台的镜像
//在MacOS M1芯片可以打包linux下运行的包,需要指定--platform linux/amd64
docker save ubuntu:18.04 -o ubuntu-18.04.tar  //导出已有的镜像并重新命名
docker image ls -q //查看所有镜像的id

删除镜像:

容器管理命令:

镜像提交

将本地镜像推送到官方远程仓库

1.先要注册账号,本地 docker login登陆

直接docker push image:tag 是push不上去的

需要先打tag,加上自己的仓库用户名

docker tag image:tag username/image:tag
docker push username/image:tag
//才能放到自己的仓库中

搭建私有镜像仓库

实际生产过程中使用私有仓库

使用Docker公司提供的Docker-registry搭建:

10.0.0.12 安装docker 并安装registry启动容器提供镜像仓库:

需要在配置文件中加入

"insecure-registries": ["120.92.84.77:5000"]

使用Harbor搭建的镜像服务器使用:

镜像创建:

docker commit 可以在一个容器中,修改内容后,重新生成一个镜像

项目实战:

docker history可以查看已经生成的镜像,查看镜像构建的过程记录

进入容器后就是在指定的工作目录下