【发布时间】:2021-10-28 22:07:23
【问题描述】:
我对 Docker 和 Django 还是很陌生。所以我所做的是,将腻子添加到 linux 服务器并在根目录中创建一个文件夹,然后使用 django-admin startproject 我开始了一个新项目。
现在,由于我使用 putty 进行 ssh 终端访问,我将无法访问 linux 机器中的浏览器,然后 ping 127.0.0.1:8000 以查看是否“恭喜!” Django 的屏幕是否可见。
所以我假设服务器可能在runserver 命令之后运行。然后使用docker我在linux机器上准备了一个容器,我已经暴露了9000端口。我也无法访问这个容器,因为我无法访问linux机器中的浏览器。现在,我有以下三个问题:
1.) 如何使用我的 windows 机器访问这个 docker 容器(在 linux 机器内)?我的意思是,如果我在 Windows 机器上打开 google chrome 浏览器,然后输入一些 url:port,我能看到“恭喜!”在 Windows 上的浏览器上显示屏幕?
2.) 我对这个容器网络端口和 ip 的工作方式感到很困惑(我的意思是主机或任何其他电脑如何访问这个 docker 容器)我尝试查找许多文档和 youtube 视频,但我很困惑.因为我知道要让外部世界访问您的网站/应用程序,我们需要将域名托管在我们需要付费的某个云上,但是 docker 怎么能免费做到这一点呢?可能听起来很蹩脚,但请帮助我理解。
3.) 我的 docker run 命令应该如何从我的 Windows 机器访问?
我的码头文件:
FROM python:3.6-slim
ENV PYTHONUNBUFFERED=1
RUN mkdir /Django
WORKDIR /Django
ADD . /Django
RUN pip install -r requirements.txt
EXPOSE 9000
CMD python manage.py runserver 0.0.0.0:9000
我正在使用以下命令来构建:
docker build -t myproj .
请帮助澄清我的问题。我将永远感激:) 谢谢大家!
【问题讨论】:
标签: django linux docker docker-compose