zoukankan      html  css  js  c++  java
  • docker-Error: No such container

    切换到root用户然后:

    service docker stop

    rm -rf /var/lib/docker
    start docker.service
    到这里就会发现镜像已经删除干净。

    docker启动命令,docker重启命令,docker关闭命令

    启动        systemctl start docker
    守护进程重启   sudo systemctl daemon-reload
    重启docker服务   systemctl restart  docker
    重启docker服务  sudo service docker restart
    关闭docker service docker stop
    关闭docker systemctl stop docker

    附docker常用命令:

    重启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指定容器名。

    docker run -d -t --name hello-world -p 8762:8762 -v /home/app/hello.jar:/home/app/hello.jar java8 java -jar /home/app/hello.jar --spring.profiles.active=dev
    -d 表示在后台启动
    -p 8762:8762 表示将容器的端口 映射成宿主主机的端口,否则8762端口访问不到
    -v /home/app/hello.jar:/home/app/hello.jar 表示将宿主主机的jar文件,映射到容器中(分号前为宿主主机的路径,分号后为容器中的路径)
    --name hello-world表示为该容器取一个全局唯一的名称,这里我取的名称为hello-world
    java8 表示镜像文件的名称(为Java镜像重命名后的名称)
    java -jar /home/app/hello.jar 表示运行jar包,注意:这里的jar包为容器中的位置,是通过前面的-v属性映射的
    --spring.profiles.active=dev 表示spring boot项目配置文件选用dev的配置
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    如果使用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

  • 相关阅读:
    1082 射击比赛 (20 分)
    1091 N-自守数 (15 分)
    1064 朋友数 (20 分)
    1031 查验身份证 (15 分)
    1028 人口普查 (20 分)
    1059 C语言竞赛 (20 分)
    1083 是否存在相等的差 (20 分)
    1077 互评成绩计算 (20 分)
    792. 高精度减法
    791. 高精度加法
  • 原文地址:https://www.cnblogs.com/zwjun/p/14252007.html
Copyright © 2011-2022 走看看