sudo docker search 镜像名称 # 搜索镜像文件 sudo docker pull 镜像名称
sudo docker images
# 简单运行一下,通常会执行一下容器就会挂掉 docker run 镜像名称 # 交互式的运行一个的docker容器,-i:交互式命令, -t:开启一个终端 docker run -it 镜像名称 /bin/bash # 后台运行一个docker容器,并指定运行shell代码 -d:让容器后台运行, -c:运行的shell命令 docker run -d 镜像名称 /bin/sh -c "while true;do echo 辛苦了,学习linux; sleep 1;done" # 运行容器并指定名称 docker run --name xxx -it 镜像名称 /bin/bash
# 运行容器并指定端口映射 docker run --name xxx -it 镜像名称 -p 6000:5000
# 运行容器并制定端口映射,文件夹映射和环境PATH映射
docker run --name xxx -it 镜像名称 -p 6000:5000 -v 宿主机目录:容器目录 -e # 运行容器指定容器的网络模式 docker run -d --name xxx --net=host
# 进入一个存活的容器 docker exec -it 容器id /bin/bash # 退出容器 exit
sudo docker stop 容器ID/容器名字
sudo docker ps # 查看存活的容器 sudo docker ps -a # 查看所有的容器
sudo docker start 容器名称/容器ID
sudo dockder inspect 容器名称/容器ID sudo docker inspect e6b | grep -i ipaddr
停止一个容器
sudo docker stop 容器ID/容器名字
重启一个容器
sudo docker restart 容器ID/容器名字
删除一个容器
sudo docker rm 容器ID/容器名称 # 必须是非正在运行的容器
删除一个镜像
sudo docker rmi image的名字/镜像ID # 确保没有容器使用该镜像(运行或者停止的容器)
sudo docker search nginx
根据镜像的名字下载镜像
sudo docker pull nginx
查看本地的镜像文件
sudo docker images
返回该容器的一个ID值
sudo docker run -d -p 80:80 nginx # d:后台运行,p实现容器和宿主机端口的映射
查看存活的容器
sudo docker ps
在本地浏览器中输入宿主机IP即可访问nginx
网络流量走向
sudo docker search redis sudo docker pull redis
sudo docker search ubuntu sudo docker pull ubuntu
我们在下载一个镜像的时候,细心一点会发现,下载的时候会分层下载
原因就是镜像会分层保存,很多容器共用一些层次,分层储存就可以节省容器的内存空间
只查看容器的ID
sudo docker ps -q
sudo docker stop `sudo docker ps -q`
sudo docker rm `sudo docker ps -aq`
但是有一点,需要使用外网才可以,以centos为例
https://hub.docker.com/v2/repositories/library/centos/tags/
curl -s https://hub.docker.com/v2/repositories/library/centos/tags/ | jq
然后下载指定的版本
以下操作必须使用外网才可以
link:https://hub.docker.com/
sudo docker login
以hello-word镜像为例,发送到自己的docker hub中,使用如下命令
sudo docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
sudo docker push IMAGE
此时自己的dockerhub中就有该镜像了
我需要将本地的删除,然后拉取
通常我们根据一个image,然后安装了很多的服务,我们希望以后基于该容器进行部署,我们就可以将该容器生成一个新的image
sudo docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
sudo docker save 镜像ID/镜像名称 > 文件名.tar # 导出的文件时tar的格式
sudo docker load -i 文件名.tar # 导出的文件时tar的格式