制作可以远程ssh的centos7下的tomcat容器镜像

1、创建一个制作镜像的文件夹

nsscloud@nsscloud:~$ mkdir makeImage
nsscloud@nsscloud:~$ cd makeImages/
nsscloud@nsscloud:~/makeImages$ touch Dockerfile
nsscloud@nsscloud:~/makeImages$ ll

2、上传tomcat以及jdk到此目录下,压缩包都在官网下载,并在目录下解压

tar -zxvf  apache-tomcat-7.0.106.tar.gz  jdk-8u261-linux-x64.tar.gz

在这里插入图片描述
3、制作Dockerfile

FROM hub.c.163.com/netease_comb/centos:7
MAINTAINER NSS/LJJ
# 更新yum源
RUN yum makecache fast && yum -y update glibc
# 安装常用软件
RUN yum install -y openssh-server vim tar wget curl rsync bzip2 iptables tcpdump less telnet net-tools lsof
# 初始化ssh登陆
RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N ''
RUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N ''
RUN ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''
RUN ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -N ''
RUN echo "RSAAuthentication yes" >> /etc/ssh/sshd_config
RUN echo "PubkeyAuthentication yes" >> /etc/ssh/sshd_config    
# 设置允许root ssh远程登录
RUN echo 'root:123456' |chpasswd
RUN sed -ri 's/^PermitRootLogin\s+.*/PermitRootLogin yes/' /etc/ssh/sshd_config
#修改/etc/ssh/sshd_config
RUN sed -i 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config
RUN mkdir /var/run/sshd
RUN mkdir -p /root/.ssh

WORKDIR /usr
#在/usr/下创建jdk目录,用来存放jdk文件
RUN mkdir jdk
#在/usr/下创建tomcat目录,用来存放tomcat
RUN mkdir tomcat

#将宿主机的jdk目录下的文件拷至镜像的/usr/jdk目录下
ADD jdk1.8.0_261 /usr/jdk/
#将宿主机的tomcat目录下的文件拷至镜像的/usr/tomcat目录下
ADD apache-tomcat-7.0.106 /usr/tomcat/

#设置环境变量
ENV JAVA_HOME=/usr/jdk
ENV JRE_HOME=$JAVA_HOME/jre
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
ENV PATH=/sbin:$JAVA_HOME/bin:$PATH
# 容器需要开放SSH 22端口
EXPOSE 22
EXPOSE 8080	

# SSH终端服务器作为后台运行
ENTRYPOINT /usr/tomcat/bin/startup.sh && /usr/sbin/sshd -D

4、根据dockerfile制作镜像

nsscloud@nsscloud:~/makeImages$ sudo docker build -t dragonstack/tomcat:v5 .

5、运行容器测试

nsscloud@nsscloud:~$ sudo docker run -d -it -p 8082:22 -p 8083:8080 dragonstack/tomcat:v5
nsscloud@nsscloud:~$ sudo docker ps 
CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS                                            NAMES
eb0daf7255f9        dragonstack/tomcat:v5   "/bin/sh -c '/usr/to…"   12 minutes ago      Up 12 minutes       0.0.0.0:8082->22/tcp, 0.0.0.0:8083->8080/tcp     blissful_bell

远程主机连接测试:

xd-slave5@xd-slave5:~$ ssh -p 8082 root@192.168.0.192
root@192.168.0.192's password: 
[root@eb0daf7255f9 ~]# 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值