针对这篇文章,我将提供完整的攻略。
1.标题:Docker教程:使用容器(简单示例)
2.目录:
- 准备工作
- 示例一:使用容器运行静态网页
- 示例二:使用容器部署Flask应用程序
3.正文:
准备工作
在开始之前,需要先确保已安装了Docker。如果还未安装,请先安装Docker。安装完成后,通过执行以下命令验证Docker已成功安装:
docker version
示例一:使用容器运行静态网页
本示例将演示如何使用Docker容器来运行一个静态网页。首先,创建一个名为myweb
的目录,并在其中创建一个名为index.html
的HTML文件。
mkdir myweb
cd myweb
echo "Hello, World!" > index.html
现在,创建一个名为Dockerfile
的文件,并将以下内容输入其中:
FROM nginx
COPY . /usr/share/nginx/html
这将基于nginx
镜像构建一个新的Docker镜像,并将当前目录中的所有内容都复制到/usr/share/nginx/html
目录下。
接下来,使用以下命令构建并运行Docker容器:
docker build -t myweb .
docker run -p 8080:80 myweb
这将构建一个名为myweb
的新Docker镜像,并将它运行在端口8080
上。现在,可以在浏览器中打开http://localhost:8080
,就可以看到Hello, World!
网页。
示例二:使用容器部署Flask应用程序
本示例将演示如何使用Docker容器来部署一个简单的Flask应用程序。首先,创建一个名为myflaskapp
的目录,并在其中创建一个名为app.py
的文件:
mkdir myflaskapp
cd myflaskapp
touch app.py
打开app.py
文件并输入以下内容:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello, World!'
if __name__ == '__main__':
app.run(debug=True, host='0.0.0.0')
这将创建一个名为hello_world
的Flask应用程序,它将监听端口5000
并返回Hello, World!
消息。
接下来,创建一个名为Dockerfile
的文件,并将以下内容输入其中:
FROM python:3.9-slim-buster
WORKDIR /app
COPY . /app
RUN pip install --no-cache-dir -r requirements.txt
EXPOSE 5000
CMD ["python", "app.py"]
这将使用python:3.9-slim-buster
镜像构建一个新的Docker镜像,并将当前目录中的所有内容复制到/app
目录下。requirements.txt
是Python依赖项列表。在容器中安装这些依赖项后,需要暴露端口5000
并启动app.py
脚本。
使用以下命令构建并运行Docker容器:
docker build -t myflaskapp .
docker run -p 8080:5000 myflaskapp
这将构建一个名为myflaskapp
的新Docker镜像,并将其运行在端口8080
上。现在可以在浏览器中打开http://localhost:8080
,应该可以看到Hello, World!
消息。
4.结果:通过这样的攻略解析,读者可以清晰明了的了解到如何使用Docker容器来运行静态网页和Flask应用程序。同时还让读者理解如何编写Dockerfile,并构建和运行Docker容器。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Docker教程:使用容器(简单示例) - Python技术站