1、mkdir nginx_ubuntu
cd nginx_ubuntu
touch Dockerfile run.sh
mkdir sample
2、编写Dockerfile

		#设置继承自创建的sshd镜像
		FROM sshd:dockerfile
		#下面是一些创建者的基本信息
		MAINTAINER waitfish from dockerpool.com(dwj_zz@163.com)
		#安装nginx,设置nginx以非daemon启动
		RUN \
			apt-get install -y nginx && \
			rm -rf /var/lib/apt/lists/* && \
			echo "\ndaemon off;">>/etc/nginx/nginx.conf && \
			chown -R www-data:www-data /var/lib/nginx
		RUN echo "Asia/Shanghai" > /etc/timezone && \
			dpkg-reconfigure -f noninteractive tzdata
		#添加我们的脚本,并设置权限,这会覆盖之前放在这个位置的脚本
		ADD run.sh /run.sh
		RUN chmod 755 /*.sh
		#定义可被挂载的目录,分别是虚拟机的挂载目录、证书目录、配置目录和日志目录
		VOLUME ["/etc/nginx/sites-enabled","/etc/nginx/certs","/etc/nginx/conf.d","/var/log/nginx"]
		#定义工作目录
		WORKDIR /etc/nginx
		#定义输出命令
		CMD ["/run.sh"]
		#定义端口
		EXPOSE 80
		EXPOSE 443
	3、run.sh脚本内容
		#!/bin/bash
		/usr/sbin/sshd &
		/usr/sbin/nginx
	4、创建镜像
		docker build -t nginx:ubuntu
	5、测试
		docker run -d -P nginx:ubuntu
		docker ps 
		curl 127.0.0.1:49193
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐