亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Docker容器不斷重啟問題解決

 更新時間:2024年11月21日 10:56:06   作者:小-黯  
本文主要介紹了使用docker-compose.yml配置文件啟動容器時遇到的問題,卷標沖突和容器無法啟動,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

1. compose配置文件

docker-compose.yml

services:
  node_app:
    image: dockerproxy.cn/node:lts-bullseye-slim
    container_name: node_app
    networks:
      macvlan_net:
        ipv4_address: 192.168.2.3
    # 掛載的卷標
    volumes:
      - app:/app
    # 工作目錄
    working_dir: /app
    # 自動重啟
    restart: always

# 卷標
volumes:
  app:
# 網(wǎng)絡
networks:
  macvlan_net:
    external: true

2. 查看卷標

查看docker已經(jīng)存在的卷標,發(fā)現(xiàn)存在卷標node_app

docker volume ls
DRIVER    VOLUME NAME
local     node_app

3. 問題初步探討

在compose配置文件中,卷標app會被自動重命名為node_app,而恰好上次使用的卷標沒有清理,沖突了

# 卷標
volumes:
  app:

4. 初步嘗試

  • 刪除舊的卷標node_app
  • 使用舊的卷標,compose的卷標配置應當改為如下
# 卷標
volumes:
  node_app:
    external: true

5. 依然無法啟動

以最簡單的配置文件運行容器, 依然無法啟動

services:
  node_app:
    image: dockerproxy.cn/node:lts-bullseye-slim
    container_name: node_app
    working_dir: /app
    restart: no

然后我換了一個容器名稱(test),用docker ps -a,名稱沒問題是test
但是奇怪的是用docker compose exec test bash,卻發(fā)現(xiàn)找不到test,但在exec后用tab鍵自動補全的竟然是node_app
匪夷所思,我查看了所有容器并沒有這個容器啊,整個dokcer除了我要用到的卷標名稱為node_app意外,沒有其他相關的名稱了,但是我也沒掛載它呀

用portainer查看以下該容器的信息

在這里插入圖片描述

發(fā)現(xiàn)兩個奇怪的點
com.docker.compose.project的值是node
com.docker.compose.service的值是node_app,
這不是我最最最開始使用的鏡像名和容器名稱嗎?也是容器默認的名稱

6. 解決方案

最后從【Docker】解決docker-compose啟動的容器一直處于restarting狀態(tài)的問題文章中獲得該方法

tty:true

該參數(shù)作用簡介:

交互式操作: 如果您運行一個需要用戶輸入的交互式應用程序(例如,使用 bash 或某些 CLI 工具),設置 tty: true 將允許您與該應用程序進行交互。沒有這個設置,您可能無法獲得正確的輸入輸出體驗。

增強輸出格式: 某些程序(例如日志查看工具或某些編程語言的 REPL)可以利用 TTY 來生成更友好的輸出格式。例如,帶顏色的輸出通常依賴 TTY 的存在。

保持會話活躍: 有些應用程序(如一些長期運行的進程)可能需要一個 TTY 來保持活躍。如果沒有 TTY,應用可能會提早結(jié)束或進入休眠狀態(tài)。

7. 結(jié)論

那么這下似乎就明白了,似乎全是鏡像的問題,compose會讀取鏡像的默認項目名和服務名作為堆棧和容器名稱,加了contianer_name也沒用,然后就是鏡像是精簡版的,所以默認是一次性運行,必須加上tty:true來維持運行

8. 參考文章

[1]【Docker】解決docker-compose啟動的容器一直處于restarting狀態(tài)的問題

到此這篇關于Docker容器不斷重啟問題解決的文章就介紹到這了,更多相關Docker容器不斷重啟內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • docker push遇到unknown blob問題解決

    docker push遇到unknown blob問題解決

    這篇文章主要為大家介紹了docker push遇到unknown blob問題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-11-11
  • Docker 清理命令集錦

    Docker 清理命令集錦

    這篇文章主要介紹了Docker 清理命令集錦,需要的朋友可以參考下
    2014-10-10
  • Docker如何固定IP設置的方法

    Docker如何固定IP設置的方法

    本篇文章主要介紹了Docker如何固定IP設置的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • docker-compose部署nginx教程

    docker-compose部署nginx教程

    文章介紹了如何安裝和配置docker-compose,創(chuàng)建一個Nginx容器,并通過docker-compose.yml文件進行配置,包括映射文件夾和自定義轉(zhuǎn)發(fā)配置,最后,提供了重啟和配置生效的腳本
    2025-01-01
  • docker如何動態(tài)查看日志最后100行

    docker如何動態(tài)查看日志最后100行

    這篇文章主要介紹了docker如何動態(tài)查看日志最后100行問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教<BR>
    2024-01-01
  • 深入了解docker(docker鏡像、容器、倉庫的基本概念)

    深入了解docker(docker鏡像、容器、倉庫的基本概念)

    本文重點給大家介紹docker鏡像、容器、倉庫的基本概念,感興趣的朋友跟著小編一起學習吧
    2016-10-10
  • docker鏡像Tag為none的原因及分析

    docker鏡像Tag為none的原因及分析

    文章介紹了Docker鏡像標簽為none的原因及其處理方法,none標簽的鏡像可能有用,也可能無用,具體取決于是否有容器引用,建議在構建同名同tag的鏡像前檢查是否存在同名鏡像,并注意強行刪除鏡像可能帶來的問題,Docker沒有自動刪除none鏡像的機制,需要手動刪除
    2025-02-02
  • Docker Compose部署微服務項目上線功能

    Docker Compose部署微服務項目上線功能

    這篇文章主要介紹了Docker Compose部署微服務項目上線,需求是這樣的編寫一個SpringBoot + Redis 的微服務項目,并提供 hello接口,每訪問一次接口,計數(shù)器+1,本文給大家分享實現(xiàn)思路,需要的朋友可以參考下
    2022-07-07
  • Docker部署MySQL鏡像的保姆級教程

    Docker部署MySQL鏡像的保姆級教程

    docker是一種容器化技術,可以將應用程序及其依賴項打包成一個獨立的可移植容器,mysql是一個流行的關系型數(shù)據(jù)庫管理系統(tǒng),在Docker中部署MySQL鏡像可以方便地創(chuàng)建和管理MySQL數(shù)據(jù)庫實例,本文給大家介紹了Docker部署MySQL鏡像的教程,需要的朋友可以參考下
    2025-06-06
  • docker中nginx的location轉(zhuǎn)發(fā)不生效的解決

    docker中nginx的location轉(zhuǎn)發(fā)不生效的解決

    這篇文章主要介紹了docker中nginx的location轉(zhuǎn)發(fā)不生效的解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06

最新評論