文章永久连接:https://tech.souyunku.com/5075
前面我们运行的容器并没什么大作用,这次,我们尝试使用 docker 构建一个 web 应用程序
我们将在 Docker 容器中运行一个 Python Flask 应用来运行一个 web 应用
我特意去 Docker Hub 找了一圈,发现这个 jcdemo/flaskapp
是最好的,小,而且刚好满足我们的需求
拉取 jcdemo/flaskapp
镜像
使用下面的命令将 jcdemo/flaskapp
镜像拉取到本地
[root@localhost ~]# docker pull jcdemo/flaskapp
latest: Pulling from jcdemo/flaskapp
81033e7c1d6a: Pull complete
9b61101706a6: Pull complete
35b21c1a8b97: Pull complete
4856f5aeeec4: Pull complete
ce9545e7847c: Pull complete
c0a17c8bb7b9: Pull complete
c8d70066c010: Pull complete
Digest: sha256:c0c7fb38dfa6dc371e8c04827eb83ff265401ddc25b624ed58d05b1cce0026f8
Status: Downloaded newer image for jcdemo/flaskapp:latest
f6a0e149983a29294abd76c141f44e8da59bcbaf1d283be63fca803a486f9582
Docker 容器运行 Web 应用
我们使用下面的命令运行我们的 Web 应用容器 jcdemo/flaskapp
[root@localhost ~]# docker run -d -P jcdemo/flaskapp
d07b599f11e473c3112002f9b697efd4f01b0f7563490db65cfc11ba8d816bbb
参数 | 说明 |
---|---|
-d | 让容器在后台运行 |
-P | 将容器内部使用的网络端口映射到我们使用的主机上 |
查看 WEB 应用容器
使用 docker ps 来查看我们正在运行的容器 (字段有删除)
[root@localhost ~]# docker ps
CONTAINER ID STATUS PORTS
d07b599f11e4 Up 3 minutes 0.0.0.0:32768->5000/tcp
可以看到,想比较于之间的容器,这个容器的 PORTS
字段是有值的
PORTS
0、0、0.0:32768->5000/tcp
Docker 开放了 5000 端口(默认 Python Flask 端口)映射到主机端口 32768 上
这样我们就可以通过 http://localhost:32768/ 来访问 Web 应用
干货推荐
附录:Docker 教程:系列文章
- 一、Docker 基础教程
- 二、Docker 架构
- 三、Ubuntu 安装 Docker
- 四、CentOS Docker 安装
- 五、Windows 安装 Docker
- 六、Docker run 运行镜像
- 七、Docker 容器
- 八、Docker top 查看容器进程
- 九、Docker inspect 容器元数据
- 十、Docker start 启动容器
- 十一、Docker restart 重启容器
- 十二、Docker rm 删除已停止的容器
- 十三、Docker 命名容器
- 【当前读到】十四、Docker 容器运行 Web 应用
- 十五、Docker 端口映射
- 十六、Docker images 本地镜像列表
- 十七、Docker 查找镜像
- 十八、Docker commit 更新镜像
- 十九、Docker Dockerfile 创建镜像
- 二十、Docker build 构建镜像
- 二十一、Docker 镜像打标签
- 二十二、Docker 部署 Nginx 环境
- 二十三、Docker 部署 PHP 环境
- 二十四、Docker 安装 MySQL
- 二十五、Docker 安装 Tomcat
- 二十六、Docker 安装 Python
- 二十七、Docker 安装 Redis
- 二十八、Docker 安装 MongoDB
- 二十九、Docker 安装 Apache
- 三十、Docker 命令大全