![](/img/trans.png)
[英]How to pass a CSV file to a Flask app running inside a Docker container?
[英]How to access the Django app running inside the Docker container?
我目前正在使用以下命令在 docker 容器內運行我的 django 應用程序
docker-compose run app sh -c "python manage.py runserver"
但我無法使用本地主機 url 訪問應用程序(不使用任何額外的數據庫服務器或 ngnix 或 gunicorn,只需在 docker 內運行 django 開發服務器)。
請讓我知道如何訪問該應用程序
docker-compose run
旨在啟動基於docker-compose.yml
中的服務作為模板的實用程序容器。 它故意不發布ports:
在 Compose 文件中聲明,並且您不需要它來運行主服務。
docker-compose up
應該是您啟動服務的首選電話。 只需docker-compose up
自行啟動,將同時在前台啟動docker-compose.yml
中的所有內容; 您可以添加-d
以在后台啟動進程,或添加特定服務名稱docker-compose up app
以僅啟動app
服務及其依賴項。
python
命令本身應該是圖像 Dockerfile 中的主要CMD
。 您不需要在docker-compose.yml
文件中覆蓋它或在命令行中提供它。
典型的 Compose YAML 文件可能如下所示:
version: '3.8'
services:
app:
build: . # from the Dockerfile in the current directory
ports:
- 5000:5000 # make localhost:5000 forward to port 5000 in the container
盡管 Compose 支持許多設置,但您不需要提供大部分設置。 Compose 為container_name:
、 hostname:
、 image:
和networks:
提供了合理的默認值; expose:
, entrypoint:
和command:
通常來自您的 Dockerfile 並且不需要被覆蓋。
嘗試 0.0.0.0:<PORT_NUMBER>(通常為 80 或 8000),如果您仍然無法連接服務器,您應該使用 Docker 機器 IP 而不是 localhost。 在終端中輸入以下內容並導航到提供的 url:
docker-machine ip
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.