初次使用Docker的体验笔记总结
什么是Docker
Docker是一种轻量级的容器虚拟化技术,可以快速构建、打包以及分享便携式容器应用程序。Docker可以在不同的操作系统上共享,具有简单易用、环境隔离等优点。
安装Docker
- Mac:可以通过Homebrew安装,命令行输入
brew install docker
- Windows:可以从官网下载Docker Desktop进行安装,下载地址
- Linux:不同的Linux发行版有不同的安装方式,可以参考Docker官方文档进行安装,官方文档地址
运行一个Hello World的容器
- 在命令行输入以下命令,将会自动下载并运行一个Docker的Hello World的容器:
docker run hello-world
- 如果一切正常的话,将会显示以下的输出:
Hello from Docker!
...
运行一个Python Flask应用程序
我们可以使用Docker来快速地创建、运行Python Flask应用程序环境。
- 首先,我们需要在项目根目录创建一个Dockerfile文件,内容如下:
```
FROM python:3.7-alpine
ENV FLASK_APP=app.py
COPY . /app
WORKDIR /app
RUN pip install --no-cache-dir -r requirements.txt
CMD ["flask", "run", "--host=0.0.0.0"]
```
- 然后,在终端中运行以下命令进行构建:
docker build -t flask-sample-one:latest .
- 构建完成后,使用以下命令来运行容器:
docker run -p 5000:5000 flask-sample-one
- 浏览器输入
localhost:5000
,将会看到Flask应用程序的欢迎页面。
运行一个Nginx反向代理
我们可以使用Docker来快速地创建、运行Nginx反向代理服务器。
- 首先,在本地创建一个nginx.conf的配置文件,例如:
```
events {}
http {
upstream backend {
server 192.168.0.1:8080;
server 192.168.0.2:8080;
}
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass_request_headers on;
}
}
}
```
- 在本地创建Dockerfile文件,例如:
```
FROM nginx:alpine
RUN rm /etc/nginx/conf.d/default.conf
COPY nginx.conf /etc/nginx/conf.d
EXPOSE 80
```
- 运行以下命令进行构建和运行:
```
docker build -t nginx-reverse-proxy .
docker run --name=my-nginx -p 80:80 -d nginx-reverse-proxy
```
- 浏览器输入
localhost
,将会看到Nginx反向代理服务器的欢迎页面。
以上是初次使用Docker的体验笔记总结,希望对大家有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:初次使用Docker的体验笔记总结 - Python技术站