Dockerfun

  • 主页
所有文章 关于我

Dockerfun

  • 主页

docker-compose开机自动重启

阅读数:17660次 2016-03-09
字数统计: 683字   |   阅读时长≈ 3分

docker-compose开机自动重启

在生产环境中,整个团队需要发布的容器数量很可能极其庞大,而容器之间的联系和拓扑结构也很可能非常复杂,如果依赖人工记录和维护这样复杂的容器关系,并保障集群正常运行、监控、迁移、高可用等常规运维需求,实在是力不从心。
因此,我们需要一种像Dockerfile定义Docker容器一样能够定义容器集群的编排和部署工具,Compose就是来解决这种问题的工具。

docker-compose的安装

docker-compose的安装非常简单:

1
2
$ curl -L https://github.com/docker/compose/releases/download/1.2.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose

docker-compose.yml的编写

这是sdp环境的一个例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
gitlab: 
image: 'registry.menethil.net:5000/sameersbn/gitlab'
ports:
- "8082:80"
- "10022:22"
links:
- redis:redisio
- postgresql:postgresql
- ldap:ldap1
volumes:
- /data/srv/docker/gitlab/gitlab:/home/git/data
environment:
- GITLAB_PORT=80
- GITLAB_SSH_PORT=10022
- GITLAB_HOST=git.menethil.neti
- LDAP_ENABLED=true
- LDAP_HOST=10.117.105.140
- LDAP_UID=uid
- LDAP_BIND_DN=cn=Manager,dc=tuleap,dc=local
- LDAP_PASS=123456
- LDAP_ALLOW_USERNAME_OR_EMAIL_LOGIN=false
- LDAP_BLOCK_AUTO_CREATED_USERS=false
- LDAP_BASE=ou=people,dc=tuleap,dc=local
- LDAP_LABEL=LDAP
- UNICORN_TIMEOUT=72000
- NGINX_MAX_UPLOAD_SIZE=10000M
redis:
image: 'registry.menethil.net:5000/sameersbn/redis:latest'
volumes:
- /data/var/lib/redis:/var/lib/redis
expose:
- "6379"
postgresql:
image: 'registry.menethil.net:5000/sameersbn/postgresql:9.4-3'
volumes:
- /data/var/lib/postgresql:/var/lib/postgresql
environment:
- DB_NAME=gitlabhq_production
- DB_USER=gitlab
- DB_PASS=password
ports:
- "5432:5432"
expose:
- "5432"

nginx:
image: 'registry.menethil.net:5000/shareinto/nginx:0.1'
ports:
- '80:80'
volumes:
- /root/nginx/nginx-conf:/etc/nginx/conf.d
- /data/etc/salt/pki/minion:/etc/salt/pki/minion
ldap:
image: 'registry.menethil.net:5000/enalean/ldap'
ports:
- '389:389'
- '636:636'
expose:
- "389"
- "636"
volumes:
- /data/ldap/data:/data
environment:
- LDAP_ROOT_PASSWORD=123456
- LDAP_MANAGER_PASSWORD=123456
jenkins:
image: 'registry.menethil.net:5000/shareinto/jenkins:0.1'
ports:
- "8080:8080"
volumes:
- /data/home/.m2/repository:/home/.m2/repository
- /data/data/jenkins/jobs:/data/jenkins/jobs
- /data/data/jenkins:/data/jenkins
environment:
- JENKINS_HOME=/data/jenkins
- NEXUS_HOST=http://10.117.105.140:8081
user: root
links:
- ldap:ldap1
nexus:
image: 'registry.menethil.net:5000/sonatype/nexus'
ports:
- "8081:8081"
volumes:
- /data/sonatype-work:/sonatype-work
user: root
mongo:
image: 'registry.menethil.net:5000/tutum/mongodb'
ports:
- "27017:27017"
- "28017:28017"
volumes:
- AUTH=no
ports:
- "4506:4506"
- /data/etc/salt/pki:/etc/salt/pki
- /data/var/cache/salt:/var/cache/salt
- /data/etc/salt/master.d:/etc/salt/master.d
- /data/srv/salt:/srv/salt
erp:
image: 'registry.menethil.net:5000/shareinto/omco.erp.web:1.0.0'
ports:
- "5004:5004"
links:
- ldap:ldap1
sdp:
image: 'shareinto/portal'
ports:
- "8889:8080"
links:
- saltmaster
- jenkins
- nexus
- gitlab

文件的说明文档可以查看这里

开机自动运行

找到/etc/rc.d/rc.local文件,添加以下脚本

1
/usr/local/bin/docker-compose -f /root/gitlab-compose/docker-compose.yml up -d

其中-f参数是指定docker-compose.yml文件的参数
设置完以后,重启操作系统,耐心等待一会,就可以看到对应的docker容器都启动起来了

  • docker
  • linux
  • docker-compose

扫一扫,分享到微信

排列组合算法
Go Data Structures Interfaces
收藏文章
登录
表情删除后不可恢复,是否删除
取消
确定
图片正在上传,请稍后...
取消上传
评论内容为空!
还没有评论,快来抢沙发吧!
  • 最新评论
该评论已关闭!
shareinto正在使用畅言云评
去社区看看吧
去热评看看吧
  • 网关代理-告别https_proxy | shareinto
    网关代理-告别https_proxy | shareinto
  • 为Docker分配独立IP | shareinto
    为Docker分配独立IP | shareinto
  • 协同进程的死锁问题 | shareinto
    协同进程的死锁问题 | shareinto
  • JVM-In-Docker:暴涨的内存 | shareinto
    JVM-In-Docker:暴涨的内存 | shareinto
  • 网关代理-告别https_proxy | shareinto
  • 为Docker分配独立IP | shareinto
  • 协同进程的死锁问题 | shareinto
  • JVM-In-Docker:暴涨的内存 | shareinto
热评话题
  • JVM-In-Docker:暴涨的内存 | shareinto
  • 制作unix环境高级编程编译环境的docker镜像 | shareinto
  • centos6.5上安装docker环境 | shareinto
  • docker-开启远程访问 | shareinto
  • maven和docker调试java应用程序 | shareinto
  • 谁是Docker容器的init(1)进程 | shareinto
  • docker-compose开机自动重启 | shareinto
关闭
按钮 内容不能为空!
立刻说两句吧! 查看0条评论
  • 你收到0条新通知
  • 你有0条评论收到赞同
  • 你有0条新回复
  • 本日畅言云评热评新鲜出炉啦!
  • 你有0个任务已完成
  • 你收获0个畅言云评足迹
© 2016-2022 Dockerfun
GitHub:hexo-theme-yilia-plus by Litten
本站总访问量18486次 | 本站访客数15692人 闽ICP备2021017643号-1
  • 所有文章
  • 关于我

tag:

  • go
  • java
  • docker
  • linux
  • kubernetes
  • centos
  • kernel
  • ios
  • algorithm
  • 操作系统
  • docker-compose
  • performance
  • cpu
  • thread
  • tool
  • 效率
  • kprobe
  • ebpf
  • git
  • git-flow

    缺失模块。
    1、请确保node版本大于6.2
    2、在博客根目录(注意不是yilia-plus根目录)执行以下命令:
    npm i hexo-generator-json-content --save

    3、在根目录_config.yml里添加配置:

      jsonContent:
        meta: false
        pages: false
        posts:
          title: true
          date: true
          path: true
          text: false
          raw: false
          content: false
          slug: false
          updated: false
          comments: false
          link: false
          permalink: false
          excerpt: false
          categories: false
          tags: true
    

  • 网关代理-告别https_proxy

    2021-12-15

    #docker#linux

  • 通过uprobe验证int3指令

    2021-11-11

    #go#kprobe#ebpf

  • Go defer opencoded

    2021-10-29

    #go

  • 被“饿死的”goroutine

    2019-08-17

    #go

  • helm安装

    2019-02-12

    #kubernetes

  • 谁是Docker容器的init(1)进程

    2019-01-30

    #docker

  • centos7上安装docker环境

    2018-09-17

    #docker#linux#centos

  • centos7内核升级

    2018-09-17

    #linux#centos#kernel

  • JVM-In-Docker:暴涨的内存

    2018-04-12

    #java#docker#linux

  • 多线程一定比单线程快吗

    2017-08-10

    #performance#cpu#thread

  • 为Docker分配独立IP

    2017-07-10

    #docker

  • 基于Ingress的BlueGreenDeployment

    2017-04-24

    #docker#linux#kubernetes

  • Kubernetes Ingress(1)简介

    2017-04-13

    #docker#linux#kubernetes

  • Kubernetes Ingress(2)Controller源码分析

    2017-04-13

    #docker#linux#kubernetes

  • centos7-kubernetes-deploy

    2017-03-20

    #docker#kubernetes

  • java中的随机数

    2017-02-20

    #java

  • maven和docker调试java应用程序

    2016-12-31

    #docker#tool#效率

  • 浅谈java中List接口

    2016-12-15

    #java

  • 协同进程的死锁问题

    2016-12-14

    #linux#操作系统

  • linux中的文件强制锁

    2016-12-07

    #linux#操作系统

  • linux的控制终端

    2016-11-17

    #linux#操作系统

  • 制作unix环境高级编程编译环境的docker镜像

    2016-10-31

    #docker#linux#操作系统

  • 排列组合算法

    2016-10-31

    #algorithm

  • docker-compose开机自动重启

    2016-03-09

    #docker#linux#docker-compose

  • Go Data Structures Interfaces

    2016-03-08

    #go

  • docker-开启远程访问

    2016-03-03

    #docker

  • cocoapods-proxy服务器部署

    2016-02-26

    #ios

  • centos6.5上安装docker环境

    2015-09-11

    #docker#linux#centos

  • centos6.5内核升级

    2015-09-11

    #linux#centos#kernel

  • windows下git-flow的安装

    2015-09-10

    #git#git-flow

shareinto