Docker一秒进阶

tar包:

tar包导入:docker load < xxxx.tar

docker run -d -p 8080:80 --name [名字] -v `pwd`:/usr/share/nginx/html nginx:1.13

-d 参数表示后台运行 --name自己指定容器名字 -v表示映射,将当前目录映射到虚拟机的/usr/share/nginx/html 路径下 最后指定版本,如果不指定1.13的话默认为最新版

   

强制删除所有docker镜像:

service docker stop

rm -rf /var/lib/docker

start docker.service

   

   

常用命令:

重启docker服务 sudo service docker restart

   

关闭docker服务 docker service docker stop

   

开启docker服务 docker service docker start

   

查看当前运行的容器:docker ps

   

查询存在的容器:docker ps -a

   

删除容器:docker rm CONTAINERID

   

强制删除容器:docker rm -f CONTAINERID

   

不能够删除一个正在运行的容器,会报错。需要先停止容器。

   

查看镜像:docker images

   

删除镜像:docker -rmi IMAGEID

   

强制删除镜像:docker -rmi -f IMAGEID

   

利用镜像创建容器:docker run --name centos -itd centos:latest

注:-i表示让容器的标准输入打开,-t表示分配一个伪终端,-d表示后台启动,要把-i -t -d 放到镜像名字前面,--name指定容器名。

   

如果使用systemctl启动服务需要用下面的方式以超级权限启动,否则会报Failed to get D-Bus connection:

Operation not permitted错误:

   

docker run --name centos -itd --privileged=true centos:latest /usr/sbin/init

   

进入后台运行的容器:docker exec -it containname /bin/bash

   

启动容器:docker start containername

   

停止容器:docker stop containername

   

停止所有的container,这样才能够删除其中的images: docker stop $(docker ps -a -q)

   

如果想要删除所有container的话再加一个指令: docker rm $(docker ps -a -q)

   

注:-a标志列出所有容器,-q标志只列出容器的ID,然后传递给rm命令

   

删除全部image的: docker rmi $(docker images -q)

   

重命名一个容器:docker rename old_name new_name

   

要获取所有容器名称及其IP地址:

docker inspect -f '{{.Name}} - {{.NetworkSettings.IPAddress }}' $(docker ps -aq)

   

进入容器内部后可以使用下面命令获取目前容器的ip

cat /etc/hosts

在docker容器和宿主机之间复制文件:

切换为root用户然后:

   

从主机复制到容器 docker cp host_path containerID:container_path

   

从容器复制到主机 docker cp containerID:container_path host_path

   

posted @ 2020-10-13 16:12  人见人爱的Zain  阅读(70)  评论(0编辑  收藏  举报