mirror of
https://gitee.com/kennylee/docker.git
synced 2024-11-29 18:38:34 +08:00
43 lines
1.7 KiB
Docker
Executable File
43 lines
1.7 KiB
Docker
Executable File
# see also https://github.com/hashicorp/docker-consul
|
|
FROM consul
|
|
|
|
MAINTAINER kennylee <kennylee26@gmail.com>
|
|
|
|
# 使用阿里云镜像
|
|
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
|
|
|
|
# Install base packages
|
|
RUN apk --no-cache update && \
|
|
apk --no-cache upgrade && \
|
|
apk --no-cache add curl bash tzdata tar unzip && \
|
|
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
|
|
echo "Asia/Shanghai" > /etc/timezone && \
|
|
echo -ne "Alpine Linux 3.4 image. (`uname -rsv`)\n" >> /root/.built && \
|
|
rm -fr /tmp/* /var/cache/apk/*
|
|
|
|
# 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
|
|
|
|
# CLI, HTTP, and DNS (both TCP and UDP) are the primary interfaces that applications
|
|
# use to interact with Consul.
|
|
EXPOSE 8400 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 ["docker-entrypoint.sh"]
|
|
|
|
# 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"]
|