win10系统下docker部署
Docker的使用
5.1 Win10下安装Docker
第一步:启动虚拟环境
Win10 系统下安装Docker,首先WIN+X,点击应用和功能;之后点击右侧的“程序和功能”,接着点击左侧栏“启用或关闭Windows功能”,并做以下Hyper-V(hyper-v可以理解为虚拟机平台)的配置:

第二步:安装Toolbox
最新版 Toolbox下载地址 链接: https://pan.baidu.com/s/1Nx3gVdbRrO32elJcRBfiOA 提取码: dsd4 。下载完成后,双击下载的 Docker for Windows Installer 安装文件,一路 Next,点击 Finish 完成安装。docker toolbox是一个工具集,它主要包含以下一些内容:
- Docker CLI 客户端,用来运行docker引擎创建镜像和容器
- Docker Machine. 可以让你在windows的命令行中运行docker引擎命令
- Docker Compose. 用来运行docker-compose命令
- Kitematic. 这是Docker的GUI版本
- Docker QuickStart shell. 这是一个已经配置好Docker的命令行环境
- Oracle VM Virtualbox. 虚拟机

安装完成后,Docker 会自动启动。通知栏上会出现个小鲸鱼的图标
,这表示 Docker 正在运行。桌边也会出现三个图标,我们可以在命令行执行 docker version 来查看版本号,docker run hello-world 来载入测试镜像测试。
点击WIN+R,输入CMD打开命令行窗口,输入命令docker version结果如下:

运行docker run hello-world 来载入测试镜像测试,效果如下:

第三步:镜像加速
鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,我们可以需要配置加速器来解决,我使用的是网易的镜像地址:http://hub-mirror.c.163.com。新版的 Docker 使用 /etc/docker/daemon.json(Linux) 或者 %programdata%\docker\config\daemon.json(Windows) 来配置 Daemon。请在该配置文件中加入(没有该文件的话,请先建一个):
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
也可以通过点击小鲸鱼右键settings来设置:

5.2 Docker 常用命令
- 确认容器有在运行,可以通过 docker ps 来查看
- 使用 docker stop 容器Name 命令来停止容器
- 查看docker信息 docker info
- 删除镜像:docker rmi imageID
- 停用镜像:docker stop ImageID
- 重启镜像: docker start imageID
- 删除容器: docker rm ID
- docker inspect 来查看 Docker 的底层信息
- docker images 查看docker 镜像
- 从 Docker Hub 网站来搜索镜像,Docker Hub 网址为: https://hub.docker.com/
- 使用 docker search 命令来搜索镜像。如搜索httpd的镜像。

- 使用命令 docker pull 来下载镜像。

- 命令 docker build , 从零开始来创建一个新的镜像
- 容器连接:指定容器绑定的网络地址,比如绑定 127.0.0.1。

6 Docker的实例
6.1 Docker 安装 MySQL
第一步:创建MySQL镜像:docker pull mysql
查找Docker Hub上的mysql镜像: docker search mysql

第二步:下载镜像: docker pull mysql:5.6

第三步:查看镜像。列表里查到REPOSITORY为mysql,标签为5.6的镜像。docker images mysql

第四步:使用最新的MySQL镜像。
# docker 中下载 mysql
docker pull mysql
#启动,设置初始密码
docker run --name bnc-mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql
#进入容器
docker exec -it bnc-mysql bash
#登录mysql
mysql -u root -p
ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
FLUSH PRIVILEGES;
#添加远程登录用户
CREATE USER 'liaozesong'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'liaozesong'@'%';

第五步:远程连接MySQL数据库。

第六步:新授权用户连接测试。

6.2 Docker 安装 Python项目
场景描述:我们使用一个简单的python项目,本项目是中文分词的算法。如何实现Docker安装部署。
第一步: Win10下创建目录文本
选择在D盘下创建docker目录,分别新建三个文件:Dockerfile,app.py,equirements.txt

-
Dockerfile(没有后缀):一个文本文件,包含了一条条的指令(Instruction),每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建。创建镜像必须文件。
# 基于镜像基础 FROM python:3.7 # 设置代码文件夹工作目录 /app WORKDIR /app # 复制当前代码文件到容器中 /app ADD . /app # 安装所需的包 RUN pip install -r requirements.txt # Run app.py when the container launches CMD ["python", "app.py"] -
app.py:python项目的源代码,这里测试的单个python文件,如果是一个完整项目,可以将整个文件夹拷贝到这里。
# coding:utf8
"""
DESC: Python数据预处理之第一个分词程序范例
Author:伏草惟存
Prompt: code in Python3 env
"""
import jieba
str = "道路千万条,安全第一条;行车不规范,亲人两行泪。"
print("原句: \n" + str)
seg_list = jieba.cut(str)
print("分词: \n" + " / ".join(seg_list))
- equirements.txt :所需要的插件,以python为例,其获取方法是cmd命令,进入到【D:\docker】目录,执行命令:pip freeze > requirements.txt

第二步:生成镜像。本文采用的windows环境。docker build -t friendlyhello .命令中最后的点不要忘记,这里表示当前目录

第三步:查看镜像是否生成

第四步:运行镜像程序,这里可以看到分词效果

6.3 Docker 安装 Django项目
第一步:载入镜像。一般采用自构建的方法,本文采用直接pull下载完成。docker pull training/webapp

第二步:运行镜像。docker run -d -P training/webapp python app.py # 多个PORTS端口

第三步:浏览器输入本地ip:端口号,访问网页信息
浙公网安备 33010602011771号