环境背景
VMware安装完成centos7.7
查看系统版本号:
# cat /etc/centos-release
前期准备
1.安装系统工具
$ yum install -y yum-utils device-mapper-persistent-data lvm2
2.添加软件源信息
$ yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3.更新yum缓存
$ yum makecache fast
Docker安装
1.安装Docker
$ yum -y install docker-ce
2.启动Docker
$ systemctl start docker
3.验证Docker
$ docker version
4.使用加速镜像
$ vim /etc/docker/daemon.json
#使用网易云镜像
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
5.删除docker
不用的时候可以删除docker
$ sudo yum remove docker-ce
$ sudo rm -rf /var/lib/docker
Python2.7环境配置
1.拉取镜像
$ docker pull python:2.7
2.查看镜像列表
$ docker images
3.编写测试脚本
$ mkdir python
$ vim python/test.py
4.运行容器
$ docker run -v $PWD:/usr/src/python -w /usr/src/python python:2.7 python test.py
参数说明:
-v $PWD:/usr/src/python
: 将当前目录挂载到容器的/usr/src/python
-w /usr/src/python
: 指定容器的/usr/src/python目录为工作目录
python test.py : 使用容器的python命令来执行工作目录中的test.py
5.容器删除
$ 查看docker容器信息
docker ps -a
$ 根据容器ID删除容器
例如:docker rm -v a623a3244ba0
python项目部署
1.项目目录结构如图
server.py写好了相关服务启动内容,这里展示的情况是docker创建好之后执行server.py文件
2.文件打包上传到服务器
文件包含内容如下:
项目源码目录:vuesupermarket
vuesupermarket包含源码和requirements.txt
requirements.txt文件生成方法:
pip freeze > requirements.txt
Docker构建指令目录:Dockerfile
Dockerfile是一个文本文件,期内包含一条条指令,每一条指令构建一层,
3.创建镜像
docker build -t vue_img
4.运行镜像
docker run -it -p 9060:9060 --name vue_go vue_image
参数详解:
-it:表示交互式终端的容器,非启动后立刻结束的容器
p 9060:9060:表示将docker的9060端口,映射到Linux虚拟机的9060端口也就是说,访问Linux虚拟机的9060端口,就是在访问docker容器的9060端口
--name vue_go:给容器取个名字,嫌麻烦可以省去
vue_image: 容器是用哪个镜像启动的(一个容器,必须依赖一个镜像启动)