搜索Docker镜像:
docker search v2ray
获取镜像:
从国外拉取镜像可能非常慢,可以使用国内镜像加速:
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io
然后执行:
# 拉取镜像
docker pull centos
# 运行镜像,生成容器
docker run -it centos /bin/bash
此时,命令行前的位置变成了centos
[root@3e9e090d9779 /]#
查看镜像信息
[andy@localhost ~]$ sudo docker images
[sudo] andy 的密码:
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 470671670cac 6 days ago 237MB
移除镜像:
docker rmi imageID # 根据docker image的id 移除镜像,但在删除镜像之前可以使用docker rm命令删除依赖这个镜像的容器。
如果要导出镜像到本地文件,可以使用docker save命令
[root@localhost ~]# docker save centos > /opt/centos.tar.gz
[root@localhost ~]# ll /opt/
总用量 737008
-rw-r--r--. 1 root root 244953088 1月 24 13:23 centos.tar.gz
drwx--x--x. 4 root root 28 1月 24 08:25 containerd
导入docker镜像:
docker load < /opt/centos.tar.gz
启动docker容器;
启动docker容器分为两种情况;
启动新建的容器:启动容器,并通过/bin/echo 输出 hello world
[root@localhost ~]# docker run centos /bin/echo "hello world"
hello world
docker run --name mydocker -it centos /bin/bash#启动一个bash终端,允许用户进行交互。
--name:给容器定义一个名称
-i:则让容器的标准输入保持打开。
-t:让Docker分配一个伪终端,并绑定到容器的标准输入上
/bin/bash:执行一个命令
后台启动docker容器:-d参数:后台运行容器,返回容器ID
[root@localhost ~]# docker run -d centos /bin/bash
74cd5c9c69ec66bd2eb0aaa5f1f63469fb858ff36091bae695e70720ed05066a
查看docker内的命令执行情况:docker logs dockerID
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3e9e090d9779 centos "/bin/bash" 2 hours ago Up 2 hours vigorous_carson
[root@localhost ~]# docker logs 3e9
[root@3e9e090d9779 /]# docker
bash: docker: command not found
[root@3e9e090d9779 /]# ll
bash: ll: command not found
[root@3e9e090d9779 /]# ls
bin dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var
[root@3e9e090d9779 /]# cd /opt
[root@3e9e090d9779 opt]# ll
停止窗口:
[root@localhost ~]# docker stop 3e9
3e9
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
删除容器:
docker rm 3e9