前言:
此方案并没有采用各个功能单独安装的方式,而是以docker为container,集成化一体的方式,全部安装在docker中,最后制作一个image镜像进行保存,便于移植与使用。
1、 部署服务器
开发与测试环境:
192.168.97.152
Docker内安装的系统:
Centos7.5
2、安装步骤
a) 环境介绍
[root@localhost ~]# rpm -qa | grep docker
docker-ce-cli-19.03.5-3.el7.x86_64
docker-ce-19.03.5-3.el7.x86_64
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)
b) 安装docker
略,请参考docker官方部署文档:
[https://docs.docker.com/install/linux/docker-ce/centos/#os-requirements](https://docs.docker.com/install/linux/docker-ce/centos/#os-requirements)
c) 制作镜像
i. 基础镜像
在这个镜像中包含saltStack、httpd、vim等基础软件
创建一个base目录,在目录中创建一个Dockerfile文件,内容为
FROM centos:7.5.1804
MAINTAINER sherwin <sherwin@donghua.com>
RUN rpm --import https://repo.saltstack.com/yum/redhat/7.5/x86_64/archive/2018.3.2/SALTSTACK-GPG-KEY.pub
COPY saltstack.repo /etc/yum.repos.d/
RUN yum clean expire-cache && yum install -y salt-master && yum install -y salt-api
RUN yum install -y httpd
RUN yum install -y vim
RUN yum -y install systemd systemd-libs
RUN yum clean all; \
(cd /lib/systemd/system/sysinit.target.wants/; for i in *; \
do [ $i == systemd-tmpfiles-setup.service ] || rm -f $i; done); \
rm -f /lib/systemd/system/multi-user.target.wants/*;\
rm -f /etc/systemd/system/*.wants/*;\
rm -f /lib/systemd/system/local-fs.target.wants/*; \
rm -f /lib/systemd/system/sockets.target.wants/*udev*; \
rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \
rm -f /lib/systemd/system/basic.target.wants/*;\
rm -f /lib/systemd/system/anaconda.target.wants/*;
VOLUME [ "/sys/fs/cgroup" ]
CMD ["/usr/sbin/init"]
ii. 执行命令:
[root@localhost base]<