docker search centos #默认从 Docker Hub 中搜索镜像
访问 dockerhub:https://registry.hub.docker.com
docker pull centos 拉取镜像
如果不能拉取 方法 1.需要配置配置镜像加速器
tee /etc/docker/daemon.json << 'EOF'
{"registry-mirrors":["https://rsbud4vc.mirror.aliyuncs.com","https://registry.docker-cn.com","https://docker.mirrors.ustc.edu.cn","https://dockerhub.azk8s.cn","http://hub-mirror.c.163.com"]}
EOF
#重启 docker 服务使配置生效
systemctl restart docker
方法 2:把之前下载好的镜像通过 docker load -i 解压出来:
把 centos.tar.gz、nginx.tar.gz 镜像包上传到 xuegod63 机器的 root 目录,通过 docker load -
i 解压镜像
[root@xuegod63 ~]# docker load -i /root/nginx.tar.gz
注意:把镜像打成离线文件
[root@xuegod63 ~]# docker pull rockylinux
[root@xuegod63 ~]# docker save -o rockylinux.tar.gz rockylinux
[root@xuegod63 ~]# docker load -i rockylinux.tar.gz
#列出本地所有镜像。
docker images
镜像存到哪了:/var/lib/docker/image/overlay2/imagedb/content/sha256
删除镜像
[root@xuegod63 ~]# docker rmi -f <镜像名字>:[tag]
镜像打标签,重新起个名字:
[root@xuegod63 ~]# docker tag centos:latest centos:v1
查看帮助命令:
[root@xuegod63 ~]# docker --help
基于镜像启动容器
[root@xuegod63 ~]# docker run -d -p 80:80 nginx
注:
-d 在后台运行 ;
-p 物理机的 80 端口:容器实例的 80 端口 ,把容器中的 80 端口映射到物理机上的 80 端口
在物理机上查看容器状态:
[root@xuegod63 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
c04cd8ff802c nginx "/docker-entrypoint.…" 3 minutes ago Up 3 minutes
0.0.0.0:80->80/tcp condescending_morse
查看物理机上开启的 80 代理端口
[root@xuegod63 ~]# netstat -antup | grep 80
tcp6 0 0 :::80 :::* LISTEN 50768/docker-proxy-
测试:http://192.168.1.63
查看 docker 容器的 ip
[root@xuegod63 ~]# docker inspect <容器 id | 容器的名字>
给容器起个名字:
docker run --name nginxtest -d -p 200:80 nginx
备注:--name:指定容器的名字
停掉 docker 容器
[root@xuegod63 ~]# docker stop c1ac70aa4cf1
查看所有,包括停止的容器
[root@xuegod63 ~]# docker ps -a
查看容器日志
[root@xuegod63 ~]# docker logs c1ac70aa4cf1
启动容器
[root@xuegod63 ~]# docker start c1ac70aa4cf1
容器改名字,可以改:
[root@xuegod63 ~]# docker rename my_container new_container
访问正在运行的容器
语法: docker exec -it
docker exec -it c04cd8ff802c /bin/bash