搭建CentOS7.6容器镜像

#拉取镜像
[root@wcbpg ~]# docker pull centos:7.6.1810

[root@wcbpg ~]# docker run -d --name centos76pg -h centos76pg \
> -p 2222:22 \
> --privileged=true  \
> centos:7.6.1810 /usr/sbin/init

324f99977717793a6825011075b8b45673e5bd9948a0206fc4c36516837678e0

[root@wcbpg ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                  NAMES
324f99977717        centos:7.6.1810     "/usr/sbin/init"    38 seconds ago      Up 37 seconds       0.0.0.0:2222->22/tcp   centos76pg

#进入Linux容器
[root@wcbpg ~]# docker exec -it centos76pg bash
# 下载基础源
[root@centos76pg /]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  2523  100  2523    0     0  22307      0 --:--:-- --:--:-- --:--:-- 22526
# 配置epel源
[root@centos76pg /]# curl -o  /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
100   664  100   664    0     0     43      0  0:00:15  0:00:15 --:--:--   157
[root@centos76pg /]# 
[root@centos76pg /]# sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
[root@centos76pg /]# yum clean all
[root@centos76pg /]# rpm --rebuilddb

# 退出容器
[root@centos76pg /]# exit
exit
[root@wcbpg ~]# docker cp /usr/share/zoneinfo/Asia/Shanghai centos76pg:/etc/localtime
#进入Linux容器
[root@wcbpg ~]#  docker exec -it centos76pg bash
[root@centos76pg /]# rm -f /etc/localtime
[root@centos76pg /]# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
[root@centos76pg /]# timedatectl set-timezone "Asia/Shanghai"
# 配置容器内的SSH
[root@centos76pg /]# yum install -y openssh-clients openssh-server initscripts  net-tools


#在容器内安装其他依赖
[root@centos76pg /]#yum install -y openssh-clients openssh-server initscripts  net-tools telnet which wget \
    passwd e4fsprogs lrzsz sudo unzip lvm2 tree traceroute lsof file tar systemd \
    bridge-utils mlocate mailx strace less mmv
[root@wcbpg ~]#yum install -y dos2unix rlwrap xdpyinfo xorg-x11-apps nmap numactl numactl-devel \
    iproute rsyslog bash-completion tmux sysbench vim redhat-lsb smartmontools xinetd \
    gcc  make  sysstat ksh binutils socat cmake automake autoconf bzr bison libtool deltarpm \
    rsync libev pv subversion nload gnuplot jq oniguruma yum-fastestmirror net-snmp net-snmp-utils \
    nfs-utils rpcbind  postfix dovecot bind-utils bind bind-chroot dnsmasq haproxy keepalived bzr \
    fio bzip2 ntp flex
    
[root@wcbpg ~]#yum install -y ncurses-devel libgcrypt-devel libaio libaio-devel \
    perl perl-Env perl-devel  perl-Time-HiRes perl-DBD-MySQL perl-ExtUtils-MakeMaker perl-TermReadKey \
    perl-Config-Tiny perl-Email-Date-Format perl-Log-Dispatch perl-Mail-Sender perl-Mail-Sendmail \
    perl-MIME-Lite perl-Parallel-ForkManager perl-Digest-MD5 perl-ExtUtils-CBuilder perl-IO-Socket-SSL \
    perl-JSON openssl-devel libverto-devel libsepol-devel libselinux-devel libkadm5 keyutils-libs-devel \
    krb5-devel libcom_err-devel cyrus-sasl* perl-DBD-Pg perf slang perl-DBI  perl-CPAN \
    perl-ExtUtils-eBuilder cpan perl-tests
    
    
[root@wcbpg ~]#yum install -y  compat-libstdc++-33 gcc-c++  glibc glibc-common glibc.i686  glibc-devel glibc-devel.i686 \
    libgcc libgcc.i686 libstdc++   libstdc++-devel  libaio.i686   libaio-devel.i686 \
    libXext  libXext.i686  libXtst  libXtst.i686  libX11  libX11.i686  libXau  libXau.i686  \
    libxcb  libxcb.i686  libXi  libXi.i686   unixODBC  unixODBC-devel  zlib-devel  zlib-devel.i686 \
    compat-libcap1 libXp libXp-devel libXp.i686 elfutils-libelf elfutils-libelf-devel compat-db \
    gnome-libs pdksh xscreensaver

[root@wcbpg ~]yum install -y git python-setuptools firefox python3
[root@wcbpg ~]yum install -y java-1.8.0-openjdk* golang


# 解决agetty进程cpu占用率100%,宿主机和容器都需要执行
[root@centos76pg /]# systemctl stop getty@tty1.service
[root@wcbpg ~]# systemctl mask getty@tty1.service
Created symlink from /etc/systemd/system/getty@tty1.service to /dev/null.


#别名
[root@centos76pg /]#cat >> /root/.bashrc <<"EOF"
alias ll='ls -l --color=never'
alias ls='ls --color=never'
alias vi='vim'
EOF

#中文字体  Firefox中文乱码  yum -y install firefox
[root@centos76pg /]#yum -y groupinstall Fonts
[root@centos76pg /]#yum install -y cjkuni-ukai-fonts ibus.x86_64 ibus-libpinyin.x86_64 xorg-x11-xauth wqy-zenhei-fonts* libXfont xorg-x11-fonts* wqy* 

# python
[root@centos76pg /]#mkdir -p ~/.pip
[root@centos76pg /]#cat  > ~/.pip/pip.conf  << EOF
[global]
index-url = https://pypi.douban.com/simple/
EOF

# 修改/etc/ssh/sshd_config和/etc/ssh/ssh_config文件
[root@centos76pg /]# sed -i 's/GSSAPIAuthentication yes/GSSAPIAuthentication no/g' /etc/ssh/ssh_config
[root@centos76pg /]# sed -i 's/GSSAPIAuthentication yes/GSSAPIAuthentication no/g' /etc/ssh/sshd_config
[root@centos76pg /]# sed -i 's/#PermitRootLogin/PermitRootLogin/g' /etc/ssh/sshd_config
[root@centos76pg /]# sed -i 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config
[root@centos76pg /]# sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config

#设置root用户远程登录权限
[root@centos76pg /]# sed -i s/"PermitRootLogin no"/"PermitRootLogin yes"/g /etc/ssh/sshd_config
[root@centos76pg /]# sed -i s/"PasswordAuthentication no"/"PasswordAuthentication yes"/g /etc/ssh/sshd_config
#修改Banner配置
[root@centos76pg /]# sed -i s/"#Banner none"/"Banner none"/g /etc/ssh/sshd_config
#关闭SELINUX
[root@centos76pg /]# sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config
#修改字符集
[root@centos76pg /]# echo 'export LANG=en_US.UTF-8' >> /etc/profile

# 若访问mirrors.aliyun.com很慢,那说明是DNS解析有问题,在/etc/resolv.conf中可以添加如下项目
[root@centos76pg /]#echo "
nameserver 114.114.114.114
nameserver 8.8.8.8
nameserver 223.5.5.5
" > /etc/resolv.conf

将容器导出为镜像

[root@wcbpg ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                  NAMES
324f99977717        centos:7.6.1810     "/usr/sbin/init"    3 hours ago         Up 3 hours          0.0.0.0:2222->22/tcp   centos76pg
[root@wcbpg ~]# docker commit centos76pg wcbpg:1.0
sha256:988fc4d35414567905e3fc3e012668dc5687e19c38126e952cc480cfac00ff2d

根据镜像来创建容器

[root@wcbpg ~]# docker run -d --name pghost01 -h pghost01 \
-p 2223:22  \
--privileged=true  \
wcbpg:1.0 /usr/sbin/init

fc65e55e76418d89b6ee5163755090388db115614a328c952526c8c303fef3a3
[root@wcbpg ~]# 
[root@wcbpg ~]# docker run -d --name pghost02 -h pghost02 \
-p 2224:22  \
--privileged=true  \
wcbpg:1.0 /usr/sbin/init

6255cf65ad9aa19996bed34385848cdd6871de08c36771f5b063f5c82b5f07de
[root@wcbpg ~]# 
[root@wcbpg ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                  NAMES
6255cf65ad9a        wcbpg:1.0           "/usr/sbin/init"    6 seconds ago       Up 5 seconds        0.0.0.0:2224->22/tcp   pghost02
fc65e55e7641        wcbpg:1.0           "/usr/sbin/init"    18 seconds ago      Up 17 seconds       0.0.0.0:2223->22/tcp   pghost01
324f99977717        centos:7.6.1810     "/usr/sbin/init"    3 hours ago         Up 3 hours          0.0.0.0:2222->22/tcp   centos76pg
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值