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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM