QA
Failed to set locale, defaulting to C.UTF-8
通过docker搭建centos环境
最近在学习Redis,想要搭建一套linux环境。
因为穷,买不起云服务器。
因为穷,买不起物理机。
所以,是不是可以用Docker搭建CentOS环境呢。
安装docker环境
参照官网文档安装
安装centos环境
docker pull centos
Systemd integration
FROM centos:latest
ENV container docker
RUN (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"]
#docker build --rm -t mycentos-systemd .
安装man
FROM centos:latest
RUN (yum -y install man; yum -y install man-pages)
CMD ["/bin/bash"]
#docker build --rm -t mycentos-man .
安装telnet客户端和服务端
yum -y install telnet.x86_64
yum -y install telnet-server.x86_64
安装openssh
yum -y install openssh*
安装sshd
FROM mycentos-systemd
RUN yum -y install openssh*; yum clean all; systemctl enable sshd
EXPOSE 22
CMD ["/usr/sbin/init"]
docker run -ti --privileged -v /sys/fs/cgroup:/sys/fs/cgroup:ro -p 80:80 local/c7-systemd-httpd
安装nc
yum -y install nmap-ncat.x86_64
安装jdk
yum -y install java-11-openjdk*
制作mycentos镜像
FROM centos:latest
ENV container docker
RUN (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/*;\
#man
yum -y install man*;\
#telnet
yum -y install telnet.x86_64;\
#ssh
yum -y install openssh*;systemctl enable sshd;\
#ifconfig
yum -y install net-tools.x86_64;\
#nc
yum -y install nmap-ncat.x86_64;\
#locate updatedb
yum -y install mlocate.x86_64;\
yum -y install perl-File-ShareDir.noarch;\
#which
yum -y install which.x86_64;\
#jdk-11版本
yum -y install java-11-openjdk*;\
#passwd修改密码
yum -y install passwd.x86_64;\
#yum -y install *langpack*;\
yum -y install glibc-langpack-en.x86_64;\
#创建admin用户
useradd -u0 -p123456 -o admin;\
#修改admin用户密码
echo -e "123456\n123456" | passwd admin;
EXPOSE 22
VOLUME [ "/sys/fs/cgroup" ]
CMD ["/usr/sbin/init"]
#制作镜像:docker build --rm -t mycentos .
#启动镜像:docker run --privileged -d -v /sys/fs/cgroup:/sys/fs/cgroup:ro -p 22:22 mycentos
启动镜像后,可以使用远程工具登录