目录

1. docker基本操作

1.1 下载安装docker

1.2 docker中央仓库

1.3 镜像的操作

1.4 容器的操作


1. docker基本操作

1.1 下载安装docker

# 1. 下载关于Docker的依赖环境
yum -y install yum-utils device-mapper-persistent-data lvm2
# 2. 设置一下下载Docker的镜像源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 3. 安装Docker
yum makecache fast
yum -y install docker-ce
# 4. 启动,并设置为开机自动启动,测试
# 启动Docker服务
systemctl start docker
# 设置开机自动启动
systemctl enable docker
# 测试
docker run hello-world

1.2 docker中央仓库

  1. Docker官方的中央仓库:这个仓库是镜像最全的,但是下载速度很慢。https://hub.docker.com
  2. 国内的镜像网站:网易蜂巢、daoCloud...

     https://c.163yun.com/hub#/home

     http://hub.daocloud.io (推荐使用)

     3. 在公司内部会采用私服的方式拉取镜像。(添加配置)

# 需要在/etc/docker/daemon.json
{
	"registry-mirrors":["https://registry.docker-cn.com"],
    "insecure-registries":["ip:port"]
}
# 重启两个服务
systemctl daemon-reload
systemctl restart docker

1.3 镜像的操作

# 拉取镜像到本地
docker pull 镜像名称[:tag]
# 这种方式是直接从默认中央仓库来拉取
docker pull tomcat 
# 这种方式是我们自己设定的中央仓库,这中方式比较快
docker pull daocloud.io/library/tomcat:8.5.15-jre8
# 2. 查看全部本地的镜像
docker images
# 3. 删除本地镜像
docker rmi 镜像的标识
# 注意需要先停止镜像才可以删除,否则会有以下问题
Error response from daemon: conflict: unable to remove repository reference "hello-world" (must force) - container db55c8fd3c61 is using its referenced image bf756fb1ae65
# 当有俩个同一标识的镜像时,不可以直接通过以上命令来删除
# 如果删除该标识的所有镜像
docker rmi -f 镜像标识
# 如果删除该标识的某个镜像
docker rmi REPOSITORY:TAG 
# 例如
docker rmi tomcat:8.5
# 4. 镜像的导入导出(不规范)
# 将本地的镜像导出
docker save -o 导出的路径 镜像id
# 加载本地的镜像文件
docker load -i 镜像文件
# 修改镜像名称
docker tag 镜像id 新镜像名称:版本

1.4 容器的操作

# 1. 运行容器
# 简单操作
docker run 镜像的标识|镜像名称[:tag]
# 常用的参数
docker run -d -p 宿主机端口:容器端口 --name 容器名称 镜像的标识|镜像名称[:tag]
# -d:代表后台运行容器
# -p 宿主机端口:容器端口:为了映射当前Linux端口和容器端口
# --name 容器名称:指定容器的名称

docker查看基础镜像 docker基础镜像下载_容器

# 简单操作例如以上的images启动
docker run tomcat:8.5 或者是docker run b8df
# 常用操作例如以下
docker run -d -p 8080:8080 --name tomcat tomcat:8.5
# 或者
docker run -d -p 8080:8080 --name tomcat b8df
# 2. 查看正在运行的容器
docker ps [-qa]
# -a:查看全部的容器,包括没有运行
# -p:只查看容器得到标识
# 例如docker ps -a 显示全部信息
c4576194c721   tomcat:8.5    "catalina.sh run"   2 minutes ago   Up 2 minutes                 0.0.0.0:8080->8080/tcp   tomcat
# 例如docker ps -qa 显示全部容器,但只是显示标识
c4576194c721
# 例如docker ps 只是显示正在运行的docker容器
c4576194c721   tomcat:8.5   "catalina.sh run"   5 minutes ago   Up 5 minutes   0.0.0.0:8080->8080/tcp   tomcat
# 3. 查看容器的日志
docker logs -f 容器id
# -f:可以滚动查看日志的最后几行
# 4. 进入到容器内部
docker exec -it 容器id bash
# 例如 docker exec -it c4 bash
LICENSE  NOTICE  RELEASE-NOTES	RUNNING.txt  bin  conf	include  lib  logs  native-jni-lib  temp  webapps  work
# 相当于在容器内部进行操作
# 5. 删除容器(删除容器前,需要停止容器)
# 停止指定的容器
docker stop 容器id
# 停止全部容器
docker stop $(docker ps -qa)
# 删除指定的容器
docker rm 容器id
# 删除全部容器
docker rm $(docker ps -qa)

本篇简单的docker入门已完结 后续还有更多的技术学习分享,希望找到致同道和的it大神或者是励志通往大神的路的it打工人,一起鼓励学习,鼓励前进,以后我也会在抖音开直播学习,一起加油!!!