Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

egg-boilerplate-simple 能否默认增加 Docker 配置 #1463

Closed
thonatos opened this issue Sep 25, 2017 · 10 comments
Closed

egg-boilerplate-simple 能否默认增加 Docker 配置 #1463

thonatos opened this issue Sep 25, 2017 · 10 comments
Assignees

Comments

@thonatos
Copy link
Member

thonatos commented Sep 25, 2017

RT.

目前 Docker 部署比较常见
建议在项目里默认添加 Docker 配置,如果 ok 的话,我提个 PR

@popomore
Copy link
Member

写个 docker 库吧,不用放在模版里

@popomore
Copy link
Member

#142

@thonatos
Copy link
Member Author

thonatos commented Sep 26, 2017

Dockerfile 放在 template 可能更合适一点,下面的CI/CD流程比较常见:

source --> Aliyun Code --> Aliyun CR(container registry)--> Aliyun CS(container service)
source --> Github --> CircleCI--> Docker Hub --> Docker Cluster

项目目录:

.
├── Docker-compose.yml
├── Dockerfile
├── README.md
├── app
├── app.js
├── appveyor.yml
├── config
├── logs
├── node_modules
├── package.json
├── run
└── test

开发人员的最终交付标准是镜像,测试过程有依赖的话,可以采用如下方式:

## {root_dir}/Docker-compose.yml

version: '2.2'
services:
  egg:
    build: ./
    image: egg
    ports:
      - 7001:7001            
    networks:
      - docker_egg

  mysql:
      image: mysql:5.7.13
      restart: always
      ports:
          - 3306:3306
      volumes:
          - ./data:/var/lib/mysql
      environment:
          - MYSQL_ROOT_PASSWORD=mysql
    networks:
      - docker_egg        
          
networks:
  docker_egg:
    driver: bridge  

#访问 mysql 的话,host 填写 mysql 就可以了

@popomore
Copy link
Member

popomore commented Oct 9, 2017

是,但我的意思是每个团队的对 docker 的使用方式不同,有些还未使用 docker,所以不应该放到通用脚手架里。�如果你都是一样的,可以在构建时自动生成这个文件,再 docker build。

@popomore popomore closed this as completed Oct 9, 2017
@atian25
Copy link
Member

atian25 commented Oct 9, 2017

@thonatos 可以写一个自己的骨架,egg-init 支持 egg-init --package=my-npm-package
或者写一个类似 egg-ci 的库,在 postinstall 里面生成。

@thonatos
Copy link
Member Author

thonatos commented Oct 9, 2017

@atian25

好的,那以后再考虑加吧,我发了一个package上去~

egg-init egg-with-docker --package=egg-boilerplate-simple-docker

@atian25
Copy link
Member

atian25 commented Oct 9, 2017

你不是要搞 aliyun-egg 么?那边好像可以考虑集成。

@thonatos
Copy link
Member Author

thonatos commented Oct 9, 2017

不大一样啦,这个是通用模板,没什么依赖的

@thonatos
Copy link
Member Author

thonatos commented Oct 9, 2017

那边我明天推个PR好啦

@thonatos
Copy link
Member Author

#3398

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants