![](/img/trans.png)
[英]How do I fix the docker-compose.yml? expected <block end>, but found '<scalar>'
[英]How do I fix my docker-compose.yml? - expected <block end>, but found '<block mapping start>'
ERROR: yaml.parser.ParserError: while parsing a block mapping in "./docker-compose.yml", line 1, column 1
expected <block end>, but found '<block mapping start>' in "./docker-compose.yml", line 2, column 3
我的 yml 文件中似乎存在縮進問題。 我在這里閱讀了一些其他問題,並嘗試了各種縮進方案。 我仍然無法讓它工作。 在發布此問題之前,我故意刪除了環境名稱/密碼。
version: '2'
ghost:
image: ghost:latest
container_name: ghost-blog #Specify a custom container name, rather than a generated default name.
environment:
- NODE_ENV=production
- MYSQL_DATABASE=db-name # Change {{db-name}}
- MYSQL_USER=user # Change {{username}}
- MYSQL_PASSWORD=pass # Change {{db-password}}
# - "MAILGUN_USER={{mailgun-user}}" # Change {{mailgun-user}}
# - "MAILGUN_PASSWORD={{mailgun-password}}" # Change {{mailgun-password}}
volumes:
- ./ghost:/var/lib/ghost # persist the data
ports:
- 2368:2368
depends_on:
- mysql # ensure that the database will start first
restart: always
mysql:
image: mysql:latest
container_name: ghost-db
environment:
- MYSQL_DATABASE=dbname # Change {{db-name}}
- MYSQL_ROOT_PASSWORD=db-pass # Change {{root-password}}
- MYSQL_USER=user # Change {{username}}
- MYSQL_PASSWORD=sq-pass # Change {{db-password}}
volumes:
- ./db:/var/lib/mysql
restart: always
將來,您可以使用這個網站檢查它有什么問題,然后在旅途中修復它。
編輯:
因此,您在使用 docker-compose 文件時遇到的問題如下:
您沒有添加服務:在版本之后和
如果您想要最新圖像,則不必傳遞:latest標簽,當您想要特定版本的圖像時,您將傳遞標簽,並且在“”之間完成
至於代碼,應該如下:
version: '2'
services:
ghost:
image: ghost
container_name: ghost-blog
environment:
- NODE_ENV=production
- MYSQL_DATABASE=db-name
- MYSQL_USER=user
- MYSQL_PASSWORD=pass
# - "MAILGUN_USER={{mailgun-user}}"
# - "MAILGUN_PASSWORD={{mailgun-password}}" # Change {{mailgun-password}}
volumes:
- ./ghost:/var/lib/ghost # persist the data
ports:
- 2368:2368
depends_on:
- mysql # ensure that the database will always start first
restart: always
mysql:
image: mysql
container_name: ghost-db
environment:
- MYSQL_DATABASE=dbname # Change {{db-name}}
- MYSQL_ROOT_PASSWORD=db-pass # Change {{root-password}}
- MYSQL_USER=user # Change {{username}}
- MYSQL_PASSWORD=sq-pass # Change {{db-password}}
volumes:
- ./db:/var/lib/mysql
restart: always
在我的情況下,由於在服務名稱(如 mysql)之前缺少空格而導致的錯誤。 希望這些信息可以幫助某人!
對我來說,問題是行的縮進不足。 我在發生問題的行中添加了一個選項卡,並在此選項卡的旁邊進一步依賴。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.