dockerfile使用ubuntu14.04镜像搭建lamp

dockerfile

 1 FROM ubuntu:14.04
 2 
 3 # Update sources
 4 RUN apt-get update -y
 5 
 6 
 7 # install http
 8 RUN apt-get install -y apache2
 9 RUN mkdir -p /var/lock/apache2 /var/run/apache2
10 
11 # Setup environment
12 ENV DEBIAN_FRONTEND noninteractive
13 RUN apt-get install -y supervisor
14 RUN mkdir -p /var/log/supervisor
15 
16 ADD mydata.sql /etc/ #sql文件与supervisord控制文件,后者用于管理
17 ADD supervisord.conf /etc/
18 
19 # install mysql包括修改密码,创建数据库导入sql
20 RUN apt-get install -y mysql-client mysql-server
21 RUN service mysql start &&\
22 mysqladmin -u root password root &&\
23  mysql -u root -proot -e "create database mydata;" &&\
24     mysql -u root -proot mydata < /etc/mydata.sql   &&\
25 
26 RUN a2enmod rewrite#主要是开启路由重写
27 RUN sed -i  's#DocumentRoot /var/www/html#DocumentRoot /var/www/web#g' /etc/apache2/sites-available/000-default.conf 
28 RUN sed -i  's/AllowOverride None/AllowOverride all/g' /etc/apache2/apache2.conf 
29 RUN sed -i '$a\ServerName 172.18.0.2'  /etc/apache2/apache2.conf 
30 ADD web.tar.gz /var/www/web
31 
32 
33 #install php需要添加软件仓库
34 RUN apt-get install -y software-properties-common
35 RUN LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php
36 RUN apt-get update && apt-get install -y --no-install-recommends \
37         libapache2-mod-php5.6 \
38         php5.6 \
39         php5.6-cli \
40         php5.6-curl \
41         php5.6-dev \
42         php5.6-gd \
43         php5.6-imap \
44         php5.6-mysql \
45     && apt-get clean \
46     && rm -fr /var/lib/apt/lists/*
47 
48 EXPOSE 80 
49 
50 CMD ["supervisord", "-n"]

supervisord.conf

 1 [supervisord]
 2 ;logfile=/var/log/supervisor/supervisord-nobody.log  ; (main log file;default $CWD/supervisord.log)
 3 ;logfile_maxbytes=50MB       ; (max main logfile bytes b4 rotation;default 50MB)
 4 ;logfile_backups=10          ; (num of main logfile rotation backups;default 10)
 5 ;loglevel=info               ; (log level;default info; others: debug,warn,trace)
 6 ;pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid)
 7 nodaemon=true                ; (start in foreground if true;default false)
 8 ;user=nobody
 9 
10 [rpcinterface:supervisor]
11 supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
12 
13 
14 [program:apache2]
15 command=/bin/bash -c "source /etc/apache2/envvars && exec /usr/sbin/apache2 -DFOREGROUND"
16 
17 
18 
19 ;autostart=true                 ; start at supervisord start (default: true)
20 ;autorestart=true               ; retstart at unexpected quit (default: true)
21 ;startretries=3                 ; max # of serial start failures (default 3)
22 
23 [program:mysql]
24 command = /usr/bin/pidproxy /var/run/mysqld/mysqld.pid /usr/bin/mysqld_safe

猜你喜欢

转载自www.cnblogs.com/kagari/p/9286555.html