FROM centos:7
MAINTAINER "xxx@qq.com"
#project
RUN mkdir /projectfile
# RUN 执行以下命令
#JDK 8
RUN mkdir /usr/local/java
ADD jdk-8u171-linux-x64.tar.gz /usr/local/java/
RUN ln -s /usr/local/java/jdk1.8.0_171 /usr/local/java/jdk
ENV JAVA_HOME /usr/local/java/jdk
ENV JRE_HOME ${JAVA_HOME}/jre
ENV CLASSPATH .:${JAVA_HOME}/lib:${JRE_HOME}/lib
ENV PATH ${JAVA_HOME}/bin:$PATH
#nginx-1.8.0
RUN yum install -y pcre-devel wget net-tools gcc zlib zlib-devel make openssl-devel openssh-server
#ADD http://nginx.org/download/nginx-1.8.0.tar.gz .
#RUN tar zxvf nginx-1.8.0.tar.gz
RUN mkdir nginx-1.8.0
ADD nginx-1.8.0.tar.gz .
RUN mkdir -p /usr/local/nginx
RUN cd nginx-1.8.0 && ./configure --prefix=/usr/local/nginx && make && make install
RUN rm -fv /usr/local/nginx/conf/nginx.conf
COPY nginx_conf /usr/local/nginx/conf/nginx.conf
EXPOSE 80
#CMD /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
#ENTRYPOINT ["/usr/local/nginx/sbin/nginx","-c","/usr/local/nginx/conf/nginx.conf"]
#redis
#RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN yum -y update && yum -y install epel-release && yum -y install redis
EXPOSE 6379
RUN yum clean all
RUN sed -i -e 's@bind 127.0.0.1@bind 0.0.0.0@g' /etc/redis.conf
RUN sed -i -e 's@protected-mode yes@protected-mode no@g' /etc/redis.conf
RUN echo "requirepass 123456" >> /etc/redis.conf
#ENTRYPOINT [ "/usr/bin/redis-server","/etc/redis.conf"]
#MYSQL5.7
#RUN yum -y update
RUN yum -y install ncurses ncurses-devel bison cmake make gcc gcc-c++
RUN groupadd mysql
RUN useradd -M -s /sbin/nologin mysql -g mysql
ADD mysql-boost-5.7.20.tar.gz /usr/local/src
WORKDIR /usr/local/src/mysql-5.7.20
RUN cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=boost \
-DWITH_SYSTEMD=1 && make && make install
RUN chown -R mysql:mysql /usr/local/mysql
RUN rm -rf /etc/my.cnf
ADD my.cnf /etc/my.cnf
RUN chown mysql:mysql /etc/my.cnf
ENV PATH $PATH:/usr/local/mysql/bin:/usr/local/mysql/lib
RUN /usr/local/mysql/bin/mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data
EXPOSE 3306
RUN cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
ADD run.sh /run.sh
RUN sh /run.sh
#CMD ["/usr/sbin/init"]
CMD /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf && /usr/bin/redis-server /etc/redis.conf && /usr/sbin/init
#shell
[root@192 centosNew]# docker run -m 2048MB -d -it -p 80:80 -p 443:443 -p 6379:6379 -p 3306:3306 --name centos41 --restart=always --privileged=true -v /sys/fs/cgroup:/sys/fs/cgroup:ro centos:new4
d4c25cc5d876006e9ccd5dbf4004983ce1472dcdd0e8c15e909a1dd8cd30f45f
[root@d4c25cc5d876 mysql-5.7.20]# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 9/redis-server 0.0.
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 8/nginx: master pro
[root@8c9c545b8ead mysql-5.7.20]# /usr/sbin/init
Couldn't find an alternative telinit implementation to spawn.
#这是什么问题???有没有做过的讨论讨论