前言
经过测试发现,
Docker
和虚拟机
无法共存
如果是使用win10,请确保是专业版
此处搭建的环境是win10家庭版,由于没有win10专业版,可以去淘宝花十几块买一个注册码。
- 首先进入计算机->属性->最下面激活windows->更改秘钥。
H2QPX-NWK8W-B729D-Y4PMV-9BT6T
- 先用此密钥升级为专业版,然后在输入这个密钥激活
G47YN-QJTWH-9BWFV-M77WM-XBQHC
下载Docker
更改Docker下载源
由于众所周知的原因,Docker源下载是直接访问国外导致速度非常慢,在这里可以进入用户路径更改Docker配置
C:\Users\Administrator.docker\daemon.json
{
"registry-mirrors":["https://registry.docker-cn.com"],
"insecure-registries":[],
"debug":true,
"experimental": false,
}
Docker使用方法
打开Docker
只需要双击Docker for Windows
图标,等待任务栏中的图标提示Docker已经准备好就可以执行Docker命令了
Docker配置事项
Docker容器内部访问宿主机
docker.for.win.localhost #windows
docker.for.mac.localhost #mac
搭建一个简单的Python环境
获取镜像
从docker hub获取最新的python镜像,例如我这次准备用的是3.7.1-stretch
接着新建Dockerfile
文件,意思是从这个基础镜像进行搭建,这个文件是用来构建一个镜像
FROM python:3.7.1-stretch
获取插件
本次搭建python
环境需要一些python
的包,则需要增加一些pip install语句
即可
FROM python:3.7.1-stretch
# 添加python依赖包
RUN pip install pymysql requests redis ConfigParser
生成镜像
使用docker
命令,在电脑中生成镜像
docker build -t woodyxiong:cm-test-python .
查看镜像
docker images
进入镜像
docker run -it woodyxiong:cm-test-python bash
使用镜像
运行一套程序可能需要很多个镜像,例如mysql、php、nginx,这就需要多个镜像互相拼在一起,我们将需要的镜像写入docker-compose.yml
文件
version: '3'
services:
python:
image: woodyxiong:cm-test-python
volumes:
- ./:/data/www # 绑定目标目录
command: python /data/www/interface_check.py 884 # 运行命令
php:
image: nginx:1.15.7
启动镜像
docker-compose up -d
Docker常用命令
常用的命令
docker-compose命令
docker-compose up -d #在有docker-compose.yml的文件夹下启动Docker
docker-compose down #停止docker-compose
docker-compose exec php /bin/sh #进入Docker内部的终端
docker-compose ps #查看启动的镜像
docker命令
docker images #查看所有镜像
docker rmi 164f833d5cc2 #删除镜像
docker cp 164f833d5cc2:/etc/hosts ./ #复制docker中的文件到宿主机
docker cp ./hosts 164f833d5cc2:/etc/ #复制宿主机的文件到docker中