现在很多开源软件都采用Docker部署, 开发机器还是用windows多, win10可以用Docker Desktop
win7 下载Docker toolbox 下载地址 https://get.daocloud.io/toolbox/ 下载 v19.03.12
运行Docker Termainal, 如果出现下面错误
Error getting IP address: Something went wrong running an SSH command! command : ip addr show dev eth1 err : exit status 255
进入BIOS,找到 Intel Virtualization Technology,这个配置,设置为enabled。
运行 Docker Quickstart Terminal ,初次操作Docker需要我们下载boot2Docker镜像,为了节省时间我们可以直接在 (boot2docker下载地址:https://github.com/boot2docker/boot2docker/releases)下载版本相对性的资源
在将我们下载的 boot2docker.iso文件复制到C:\Users\Administrator.docker\machine\cache路径下,再次运行Docker Quickstart Terminal。
稍等片刻我们会看到以下结果:
为了验证Docker的安装是否成功
可以执行命令 $ docker run hello-world
或者可以使用小窗体命令走起
docker version
-
使用docker pull xxx 命令来拉去mysql镜像。
-
使用docker镜像:(如果本地没有,会自动pull下来)
docker run -p 3306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6 。
重复启动会提示
- 使用docker ps 命令, 可以看到容器里已经启动了MySQL。
如果要导出容器, 用这个
$ docker export c1bd479a5346 > myredis
如果出现 bash: myredis: Permission denied, 检查c:\docker的安装目录是否有写入的权限
开源软件通常会包括一个docker-compose.yaml. 这个可以理解为多个docker 命令的组合的批处理. 用户拿到这个批处理语句,只要运行就能创建出一样的环境
cd d:/[docker-compose.yaml所在的目录] docker-compose up --build
要注意检查 docker-compose.yaml 里面的端口密码是否和源代码里app.config里的是否一致.
比如这个mysql,对外的端口的3307,docker里的端口是3306, 但代码里是3306,结果老是连不上mysql,
version: '3' services: mysql: image: mysql:5.7.26 # network_mode: "host" # 如果需要容器使用宿主机IP(内网IP),则可以配置此项 container_name: abp-pro-mysql # 指定容器名称,如果不设置此参数,则由系统自动生成 restart: always # 设置容器自启模式 command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci # 设置utf8字符集 environment: - TZ=Asia/Shanghai # 设置容器时区与宿主机保持一致 - MYSQL_ROOT_PASSWORD=1q2w3E* # 设置root密码 volumes: - /etc/localtime:/etc/localtime:ro # 设置容器时区与宿主机保持一致 ports: - "3307:3306" networks: - lionAbpPro
你可以打开KitMatic 查看Container的Access Url,这个就是外面访问的地址
Vben 前端框架需要NodeJS. 但新版本只支持Window8.1 Server 2012以上, win7 只能下12.x的版本
https://nodejs.org/download/release/v12.22.8/
使用docker镜像:(如果本地没有,会自动pull下来)