开源项目管理工具禅道docker部署
1.Dockerfile
Dockerfile禅道官方地址:https://www.zentao.net/book/zentaopmshelp/303.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| FROM ubuntu:16.04 MAINTAINER yidong <yidong@cnezsoft.com>
RUN apt-get update && apt-get install -y apache2 mariadb-server php php-curl php-gd php-ldap php-mbstring php-mcrypt php-mysql php-xml php-zip php-cli php-json curl unzip libapache2-mod-php locales
ENV LANG="en_US.UTF8" ENV MYSQL_ROOT_PASSWORD="123456" RUN echo -e "LANG=\"en_US.UTF-8\"\nLANGUAGE=\"en_US:en\"" > /etc/default/locale && locale-gen en_US.UTF-8
RUN mkdir -p /app/zentaopms COPY docker-entrypoint.sh /app RUN chmod 777 /app/docker-entrypoint.sh RUN random=`date +%s`; curl http://cdn.zentaopm.com/latest/zentao.zip?rand=$random -o /var/www/zentao.zip RUN cd /var/www/ && unzip -q zentao.zip && rm zentao.zip RUN a2enmod rewrite
RUN rm -rf /etc/apache2/sites-enabled/000-default.conf /var/lib/mysql/* RUN sed -i '1i ServerName 127.0.0.1' /etc/apache2/apache2.conf COPY config/apache.conf /etc/apache2/sites-enabled/000-default.conf COPY config/ioncube_loader_lin_7.0.so /usr/lib/php/20151012/ioncube_loader_lin_7.0.so COPY config/00-ioncube.ini /etc/php/7.0/apache2/conf.d/ COPY config/00-ioncube.ini /etc/php/7.0/cli/conf.d/
VOLUME /app/zentaopms /var/lib/mysql ENTRYPOINT ["/app/docker-entrypoint.sh"]
|
2.启动命令
1
| docker run --name zen -v /data/website/zentao/:/app/zentaopms/www -v /data/mysql/:/var/lib/mysql -p 10080:80 -p 3306:3306 -d zentao:1.0
|
说明:
/app/zentaopms/www 是容器内的代码目录
/var/lib/mysql是容器内的数据库目录
zentao:1.0是生成zentao的镜像名称
3.数据库备份
1
| docker exec zen sh -c 'exec mysqldump -uroot -p123456 zentao' > /data/backup/zentao$(date +%Y%m%d).sql
|
可写shell脚本做定时任务每日备份
4.说明
1.本想映射3306端口用远程工具来管理数据库的,无奈折腾好久端口依旧不能用,不能远程。后边有解决的==靓仔==可留言告知。
2.部署之前咨询过禅道官方关于docker的部署方式,官方告知docker部署的已经停止维护了,这一版的应该是最后一版官方的镜像了