docker使用
1.安装docker
1.首先要卸载旧的版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2.需要一些安装包
yum install -y yum-utils
3.设置镜像的仓库
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo #默认国外的地址
yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo #国内地址
4.安装docker最新版本
1)先清楚缓存和更新yum软件包索引
yum makecache fast
2) 安装docker
yum install docker-ce docker-ce-cli containerd.io
5.启动docker
systemctl start docker #查看是否安装成功 docker version
6.通过运行hello-world 映像验证 Docker Engine 是否已正确安装
docker run hello-world
2.阿里云镜像加速器
#创建目录
sudo mkdir -p /etc/docker
# 设置文件内容
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://qp3a8s07.mirror.aliyuncs.com"]
}
EOF
#关掉docker
sudo systemctl daemon-reload
# 重启docker
sudo systemctl restart docker
docker的执行流程
//下面的图片是从网上找的,有的有出处来源,大家可以去看下,
上图来源
镜像命令
docker images 查看所有本地的主机上的镜像
#显示所有的镜像
[root@yejinjun /]# docker images
#可选参数
-a #列出说有的镜像
-q #只显示镜像的id
docker search 搜索镜像
# 搜索mysql
[root@yejinjun /]# docker search mysql
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
mysql MySQL is a widely used, open-source relation… 11128 [OK]
#可选参数 通过搜索来过滤
--filter= STARS= 100 # 过滤STARS大于100的
docker pull 下载镜像
# 下载镜像 docker pull 镜像名[:tag]
[root@yejinjun /]# docker pull mysql 不写tag 默认下载最新版本
docker rmi 删除镜像
[root@yejinjun /]# docker rmi -f 镜像id #删除指定的镜像
[root@yejinjun /]# docker rmi -f $(docker images -aq) #删除所有镜像
容器命令
我们有了镜像才可以创建容器,下载一个centos测试练习
docker pull centos
新建容器并启动
docker run [可选参数] image
# 参数说明
--name="名字" #容器的名字
-d #后台方式运行
-it #使用交互方式运行,进入容器查看内容 例子:docker run -it 容器名 /bin/bash
-P(大写) #指定容器的端口 -p 8080:8080
-P 主机端口:容器端口
-P 容器端口
容器端口
-p #随机指定端口
列出所有的运行的容器
# docker ps # 列出当前正在运行的容器
# 可选参数
-a #列出当前正在运行+历史运行过的容器
-n=? #显示最近创建的容器
-q #只显示容器的编号
退出容器
exit #直接容器停止退出
Ctrl+Q+P #退出容器不停止
删除容器
docker rm 容器id # 删除指定的容器,不能删除正在运行的容器,若要删除, rm -f 强制删除
docker rm -f $(docker ps -aq) # 删除所有容器
docker ps -a -q|xargs docker rm # 删除所用容器
启动和停止容器
docker start 容器id #启动容器
docker restart 容器id # 重启容器
docker stop 容器id #停止当前正在运行的容器
docker kill 容器id #强制停止当前容器
常用的其他命令
后台启动容器
# docker run -d 镜像名
#例子: docker run -d centos
#问题 docker ps,发现centos 停止了
#原因:docker 容器使用后台运行, 就必须要有一个前台进程,docker 发现没有应用,就会自动体制
查看日志命令
docker logs -f -t --tail 容器id
查看容器中进程的信息
docker top 容器id
查看镜像的元数据
# docker inspect 容器id
进入当前正在运行的容器
#命令
docker exec -it 容器id /bin/bash #方式一 进入容器后开启一个新的终端,可以在里面操作
docker attach 容器id #方式二 进入正运行的终端,不会穹顶新的进程。
从容器内拷贝文件到主机上
还在学习中的哈,本人在B站狂神哪里学习的,大家可以去看看,很不错的