docker centos7创建consul镜像以及用docker-compose启动镜像

直接贴代码了:

Dockfile:

# Version 0.1

FROM kuba_centos7

MAINTAINER kuba [email protected].com

# This is the release of Consul to pull in.
ENV CONSUL_VERSION=1.4.0
# This is the location of the releases.
ENV HASHICORP_RELEASES=https://releases.hashicorp.com

# Create a consul user and group first so the IDs get set the same way, even as
# the rest of this may change over time.

# Set up certificates, base tools, and Consul.

RUN yum -y install ca-certificates gnupg libcap iputils  && yum clean all  && export CC=/opt/rh/devtoolset-6/root/usr/bin/gcc  && export CXX=/opt/rh/devtoolset-6/root/usr/bin/g++  && groupadd consul  && useradd -r -g consul consul -s /bin/false  && mkdir -p /opt/software  && cd /opt/software/ \
 && gpg --keyserver pgp.mit.edu --recv-keys 91A6E7F85D05C65630BEF18951852D87348FFC4C  && wget ${HASHICORP_RELEASES}/consul/${CONSUL_VERSION}/consul_${CONSUL_VERSION}_linux_amd64.zip  && wget ${HASHICORP_RELEASES}/consul/${CONSUL_VERSION}/consul_${CONSUL_VERSION}_SHA256SUMS  && wget ${HASHICORP_RELEASES}/consul/${CONSUL_VERSION}/consul_${CONSUL_VERSION}_SHA256SUMS.sig  && gpg --batch --verify consul_${CONSUL_VERSION}_SHA256SUMS.sig consul_${CONSUL_VERSION}_SHA256SUMS  && grep consul_${CONSUL_VERSION}_linux_amd64.zip consul_${CONSUL_VERSION}_SHA256SUMS | sha256sum -c  && mkdir /usr/local/consul  && unzip -o consul_${CONSUL_VERSION}_linux_amd64.zip -d /usr/local/bin  && consul --version  && mkdir -p /consul/data  && mkdir -p /consul/config  && chown -R consul:consul /consul  && echo ‘hosts: files dns‘ > /etc/nsswitch.conf

# Expose the consul data directory as a volume since there‘s mutable state in there.
VOLUME /consul/data

# Server RPC is used for communication between Consul clients and servers for internal
# request forwarding.

EXPOSE 8300

# Serf LAN and WAN (WAN is used only by Consul servers) are used for gossip between
# Consul agents. LAN is within the datacenter and WAN is between just the Consul
# servers in all datacenters.
EXPOSE 8301 8301/udp 8302 8302/udp

# HTTP and DNS (both TCP and UDP) are the primary interfaces that applications
# use to interact with Consul.
EXPOSE 8500 8600 8600/udp

# Consul doesn‘t need root privileges so we run it as the consul user from the
# entry point script. The entry point script also uses dumb-init as the top-level
# process to reap any zombie processes created by Consul sub-processes.
ENTRYPOINT [consul]

# By default you‘ll get an insecure single-node development server that stores
# everything in RAM, exposes a web UI and HTTP endpoints, and bootstraps itself.
# Don‘t use this configuration for production.
CMD ["agent", "-dev", "-client", "0.0.0.0"]

docker build -t kuba_consul140 ./

中间如果失败,一般是网络问题,隔断时间重新执行一次就好

创建docker-compose文件

# Copyright IBM Corp. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#

version: ‘2‘

services:
  consul140_0:
    image: kuba_consul140
    restart: always
    container_name: consul140_0
    volumes:
        - ./data/:/consul/data/
    ports:
      - 8300:8300
      - 8301:8301
      - 8301:8301/udp
      - 8302:8302
      - 8302:8302/udp
      - 8500:8500
      - 8600:8600
      - 8600:8600/udp
	entrypoint: consul
    command: agent -server -data-dir=/consul/data -config-dir=/consul/config -bootstrap -node=consul1140_0 -client=0.0.0.0

启动镜像:

docker-compose -f docker-compose-consul.yaml up -d 2>&1

查看镜像是否启动成功:

docker ps

查看consul

docker exec -t xxxx容器编号  consul members

原文地址:https://www.cnblogs.com/si812cn/p/10193728.html

时间: 2024-11-02 10:05:09

docker centos7创建consul镜像以及用docker-compose启动镜像的相关文章

Docker Client创建和命令执行

//后续补上Docker的架构分析 Docker Client创建及命令执行 Docker架构:http://www.infoq.com/cn/articles/docker-source-code-analysis-part1 从整体的架构图中,可以看出Docker client在架构中的位置,Docker client是用户用来和Docker Daemon(主体部分)建立通信的客户端.用户使用Docker可执行文件发起管理container的请求. Go语言:Go是Google开发的一种编译

创建超小的Golang docker 镜像

原文: http://colobu.com/2015/10/12/create-minimal-golang-docker-images/ 本文对于创建超小的镜像非常有用 Docker是PaaS供应商dotCloud开源的一个基于LXC 的高级容器引擎,源代码托管在 GitHub 上, 基于Go语言开发并遵从Apache 2.0协议开源.正如DockerPool在免费Docker电子书Docker -- 从入门到实践中这样提到的: 作为一种新兴的虚拟化方式,Docker 跟传统的虚拟化方式相比具

【系列6】使用Dockerfile创建带LAMP的Centos Docker镜像

LAMP值的Linux (操作系统).ApacheHTTP服务器.MySQL(有时也指MariaDB,数据库软件)和PHP(有时也是指Perl或Python)的组合方案,一般很适合用来建立Web服务器环境.  ① 下载LAMP镜像:   下面介绍如何使用Docker来搭建一个包含LAMP组件的容器.[[email protected] ~]# docker search -s 10 lampFlag --stars has been deprecated, use --filter=stars=

Docker之创建自定义镜像

简单介绍 之前使用docker run或者docker pull使用了Docker Hub上面已经构建好的的镜像,当然也可以自己基于基础镜像自定义镜像. 实际操作 1.可以使用docker run或者docker pull进行镜像的拉取和运行. 2.使用docker search ×××指令进行查找镜像 指令:sudo docker search fedora 结果 这里展示了有关fedora的镜像,显示了镜像名称,描述,星级,是否为官方以及是否自动构建信息. 3.构建镜像 构建镜像可以使用两个

docker基础——自定义镜像、创建私有仓库、查看 docker 运行状态

一.自定义镜像 1,案例1 要求:请自定义一个 docker 镜像,基于 hub.c.163.com/library/centos,要求创建出来的镜像在生成容器的时候,可以直接使用 ifconfig 命令 自定义镜像,输入 vim Dockerfile: RUN rpm --import FROM hub.c.163.com/library/centos MAINTAINER suyunanyan RUN rpm --import/etc/pki/rpm-gpg/RPM-GPG-KEY-Cent

通过Dockerfile创建支持SSH服务的docker镜像(centos、Ubuntu)

centos: mkdir centos-ssh vim centos-ssh/Dockerfile FROM centos MAINTAINER blog.rootr.cn [email protected] RUN yum install -y openssh-server RUN mkdir /var/run/sshd RUN ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N '' && \ ssh-keygen

centos7.2定制属于自己的docker私有库

解决http协议的问题: 方法一:解决HTTPS问题 安装nginx,配置HTTPS协议 方法二:修改docker的配置文件 vim  /etc/default/docker增加 OPTIONS="--insecure-registry 192.168.10.249:5000" 准备配置环境: 主机名     主机IP 服务 docker-images 10.0.0.5 docker    私有库库配置 10.0.0.6 docker    客户端 [[email protected]

在centos6.x和centos7.x环境下停机扩容docker的pool空间

一.首先介绍一下docker的存储驱动Device Mapper插件的工作原理 如果在CentOS .REHL .Fedor或者其他默认没有 AUFS支持的Linux发行版上使用Docker,你需要用到Device Mapper的存储插件.将这个插件设置为默认,它会把你所有的容器存储到一个100G的简短文件中,并且限制每个容器最大为10GB.最初Docker仅能在支持Aufs文件系统的Linux发行版上运行,但是由于Aufs未能加入Linux内核,为了寻求兼容性.扩展性,Docker在内部通过g

开发常用镜像资源替换为国内开源镜像(yum,compose,maven,docker,android sdk,npm,国内开源镜像汇总)

一.国内开源镜像站点汇总 阿里云开源镜像站 (http://mirrors.aliyun.com/)网易开源镜像站 (http://mirrors.163.com/)中国科学技术大学开源镜像站 (http://mirrors.ustc.edu.cn/)清华大学开源软件镜像站 (https://mirrors.tuna.tsinghua.edu.cn/)中国电信天翼云 (http://mirrors.ctyun.cn/) 二.软件版 (一).操作系统类 1.Ubuntu阿里云:http://mir