docker在windows下发力的时候必将取代各种虚拟机,并改变程序员的开发习惯,或许还会改变infra的工作。

概要:
在Windows下搭建开发环境一直是infra(我)头疼的事情。为了解决这个问题,跟老板,程序员商量得出的解决办法有以下几种:
1.Mac下开发。优点是搭建环境方便,缺点是需要熟悉mac操作。
2.Linux下开发。优点也是搭建环境方便,缺点是需要熟悉linux操作。而且UI比Mac难看。

为了方便日常交流,最后变成使用win系统,VNC到linux下开发。还有一种是开虚拟机,经常很卡大抵最后还是以上两种选择。

本次使用windows下的docker,基本环境如下:
Win10 Pro LTSC 64bit
Docker for Windows
i5-4460,8G DDR3

Docker for Windows启动的必要条件:
64bit Win10 Pro
CPU虚拟化启动
Hyper-V启用

必须的知识:
Docker基础知识,参考docker官网

1.安装Docker:
在下方link选择Download from Docker Hub(需注册)
https://docs.docker.com/docker-for-windows/install/

安装好以后,在setting里修改cpu为2核,memory为2G(根据个人配置自己调整)

2.安装rubymine(略过)

3.启动docker化的mysql
新建F:dockermysql
添加docker-compose.yml文件,代码如下:

version: '3'
services:
db:
image: mysql
command: --default-authentication-plugin=mysql_native_password
restart: always
container_name: mysql
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_USER: test
MYSQL_PASSWORD: test
MYSQL_DATABASE: test
volumes:
- ./db_data:/var/lib/mysql

adminer:
image: adminer
restart: always
ports:
- 8080:8080

在powershell中启动db
cd F:dockermysql
docker-compose up

启动完毕后可通过浏览器打开localhost:8080查看db。可通过navicat/hedisql等工具访问db。

4.在需要调试的代码中加入Dockerfile跟docker-compose.yml。代码分别如下:

Dockerfile:
FROM ruby:2.2
RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs
RUN mkdir /myapp
WORKDIR /myapp
COPY Gemfile /myapp/Gemfile
COPY Gemfile.lock /myapp/Gemfile.lock
RUN bundle install

docker-compose.yml:
version: '3'
services:
web:
build: .
command: bundle exec rails s -p 3000 -b '0.0.0.0'
volumes:
- .:/myapp
ports:
- "3000:3000"

添加完毕后在powershell中build镜像
cd F:dockerxxxxx
docker-compose build

5.配置rubymine

 

 

内容来源于网络如有侵权请私信删除
你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!