欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker容器不斷重啟問(wèn)題解決

 更新時(shí)間:2024年11月21日 10:56:06   作者:小-黯  
本文主要介紹了使用docker-compose.yml配置文件啟動(dòng)容器時(shí)遇到的問(wèn)題,卷標(biāo)沖突和容器無(wú)法啟動(dòng),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

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
    # 掛載的卷標(biāo)
    volumes:
      - app:/app
    # 工作目錄
    working_dir: /app
    # 自動(dòng)重啟
    restart: always

# 卷標(biāo)
volumes:
  app:
# 網(wǎng)絡(luò)
networks:
  macvlan_net:
    external: true

2. 查看卷標(biāo)

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

docker volume ls
DRIVER    VOLUME NAME
local     node_app

3. 問(wèn)題初步探討

在compose配置文件中,卷標(biāo)app會(huì)被自動(dòng)重命名為node_app,而恰好上次使用的卷標(biāo)沒(méi)有清理,沖突了

# 卷標(biāo)
volumes:
  app:

4. 初步嘗試

  • 刪除舊的卷標(biāo)node_app
  • 使用舊的卷標(biāo),compose的卷標(biāo)配置應(yīng)當(dāng)改為如下
# 卷標(biāo)
volumes:
  node_app:
    external: true

5. 依然無(wú)法啟動(dòng)

以最簡(jiǎn)單的配置文件運(yùn)行容器, 依然無(wú)法啟動(dòng)

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

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

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

在這里插入圖片描述

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

6. 解決方案

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

tty:true

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

交互式操作: 如果您運(yùn)行一個(gè)需要用戶(hù)輸入的交互式應(yīng)用程序(例如,使用 bash 或某些 CLI 工具),設(shè)置 tty: true 將允許您與該應(yīng)用程序進(jìn)行交互。沒(méi)有這個(gè)設(shè)置,您可能無(wú)法獲得正確的輸入輸出體驗(yàn)。

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

保持會(huì)話(huà)活躍: 有些應(yīng)用程序(如一些長(zhǎng)期運(yùn)行的進(jìn)程)可能需要一個(gè) TTY 來(lái)保持活躍。如果沒(méi)有 TTY,應(yīng)用可能會(huì)提早結(jié)束或進(jìn)入休眠狀態(tài)。

7. 結(jié)論

那么這下似乎就明白了,似乎全是鏡像的問(wèn)題,compose會(huì)讀取鏡像的默認(rèn)項(xiàng)目名和服務(wù)名作為堆棧和容器名稱(chēng),加了contianer_name也沒(méi)用,然后就是鏡像是精簡(jiǎn)版的,所以默認(rèn)是一次性運(yùn)行,必須加上tty:true來(lái)維持運(yùn)行

8. 參考文章

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

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

相關(guān)文章

  • docker push遇到unknown blob問(wèn)題解決

    docker push遇到unknown blob問(wèn)題解決

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

    Docker 清理命令集錦

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

    Docker如何固定IP設(shè)置的方法

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

    docker-compose部署nginx教程

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

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

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

    深入了解docker(docker鏡像、容器、倉(cāng)庫(kù)的基本概念)

    本文重點(diǎn)給大家介紹docker鏡像、容器、倉(cāng)庫(kù)的基本概念,感興趣的朋友跟著小編一起學(xué)習(xí)吧
    2016-10-10
  • docker鏡像Tag為none的原因及分析

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

    文章介紹了Docker鏡像標(biāo)簽為none的原因及其處理方法,none標(biāo)簽的鏡像可能有用,也可能無(wú)用,具體取決于是否有容器引用,建議在構(gòu)建同名同tag的鏡像前檢查是否存在同名鏡像,并注意強(qiáng)行刪除鏡像可能帶來(lái)的問(wèn)題,Docker沒(méi)有自動(dòng)刪除none鏡像的機(jī)制,需要手動(dòng)刪除
    2025-02-02
  • Docker Compose部署微服務(wù)項(xiàng)目上線(xiàn)功能

    Docker Compose部署微服務(wù)項(xiàng)目上線(xiàn)功能

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

    Docker部署MySQL鏡像的保姆級(jí)教程

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

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

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

最新評(píng)論