Sign inSign up

iyzyi/webstack-laravel

By iyzyi

Updated over 6 years ago

Image
1

2.9K

iyzyi/webstack-laravel repository overview

启动

请先创建一个名为webstack的空数据库,且mysql要开启远程访问。

docker run -it --name webstack \
-p 50009:8000 \
-e DB_HOST="123.123.123.123" \
-e DB_PORT="3306" \
-e DB_DATABASE="webstack" \
-e DB_USERNAME="root" \
-e DB_PASSWORD="password" \
-e ENTRYPOINT_CHOICE="new-server" \
--restart=always \
iyzyi/webstack-laravel

50009替换为宿主机开放端口,DB_HOST替换为数据库的ip,数据库的用户名和密码也请替换成你自己的。

ENTRYPOINT_CHOICE可以选择new-serverserve(注意拼写,建议复制)。

new-server适用于第一次创建站点,serve适用于你曾经创建过站点、此时不想初始化数据库,想要保留原来的数据。

容器启动成功的标志是开始监听8000端口,会有黄色文字提示,看到提示可以按ctrl+P+Q退出容器(如果确保自己的参数没问题,可以一开始就把启动命令中的-it换成-itd)。看到其他信息请检差数据库是否连接正确。

其他

项目自带了一些网址数据,不想要这些数据的,可以:

#进入容器
docker exec -it webstack /bin/sh

#清空数据
/entrypoint.sh clean

上传的图片在容器内的/opt/navi/public/uploads/images,备份只需要备份这些图片和数据库。

#将容器中的图片复制到宿主机
docker cp webstack:/opt/navi/public/uploads/images /root/backups

Dockerfile

FROM alpine:3.9
LABEL "Mail":"[email protected]"\
      "version":"v1.3.0"
ENV RUN_USER daemon
ENV RUN_GROUP daemon
ENV INSTALL_DIR /opt/navi
ENV DB_HOST 172.18.0.4
ENV DB_PORT 3306
ENV DB_DATABASE webstack
ENV DB_USERNAME root
ENV DB_PASSWORD root
ENV LOGIN_COPTCHA true
ENV ENTRYPOINT_CHOICE new-server


ARG DOWNLOAD_URL=http://file.iyzyi.com/package/WebStack-Laravel/WebStack-Laravel-1.3.1.tar.gz
EXPOSE 8000

COPY entrypoint.sh /entrypoint.sh
RUN apk update -qq \
        && apk upgrade \
        && apk add --no-cache tini \
           curl composer \
       php-pdo php-fileinfo  php-tokenizer php-gd php-dom  php-xmlwriter php-xml php-pdo_mysql php-session \
    && rm -rf /var/cache/apk/* \
    && mkdir -p ${INSTALL_DIR}
RUN apk add --no-cache php7-simplexml

RUN curl -L --silent  ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "${INSTALL_DIR}" \
    && cd ${INSTALL_DIR} \
    && composer install  \
    && cp .env.example .env \
    && chown -R ${RUN_USER}:${RUN_GROUP} ${INSTALL_DIR}\
    && chown -R ${RUN_USER}:${RUN_GROUP} /entrypoint.sh
RUN chmod 777 /entrypoint.sh

#RUN : \
#    && /bin/echo -e '#!/bin/sh\n' >> /run.exe \
#    && bin/echo "/entrypoint.sh ${ENTRYPOINT_CHOICE}" >> /run.exe \
#    && chmod +x /run.exe
#CMD ["/run.exe"]
CMD /entrypoint.sh ${ENTRYPOINT_CHOICE}

WORKDIR ${INSTALL_DIR}

github

https://github.com/iyzyi/WebStackLaravelDockerfile

Tag summary

Content type

Image

Digest

Size

135.6 MB

Last updated

over 6 years ago

docker pull iyzyi/webstack-laravel