[修改]修改了panel的dockerfile,变更为容器内运行

This commit is contained in:
makotocc0107
2024-09-23 17:11:31 +08:00
committed by Coding
parent d233af6f50
commit de4203668d
4 changed files with 62 additions and 11 deletions

View File

@@ -11,15 +11,17 @@ services:
depends_on:
- node-exporter
panel:
build: docker/panel
volumes:
- ./management-panel:/app
entrypoint: php artisan serve --host=0.0.0.0
build: management-panel
# volumes:
# - ./management-panel:/app
entrypoint: /app/entrypoint.sh
command: php artisan octane:start --server=swoole --workers=4 --host=0.0.0.0 --port=8000
ports:
- 8000:8000
depends_on:
- etcd
- prometheus
restart: always
node-exporter:
build: docker/node_exporter
# privileged: true
@@ -28,6 +30,4 @@ services:
volumes:
- '/:/host:ro'
opcua-exporter:
build: opcua-exporter
## volumes:
## - ./data:/data
build: opcua-exporter

View File

@@ -5,7 +5,7 @@ APP_DEBUG=true
APP_TIMEZONE=UTC
APP_URL=http://localhost
APP_LOCALE=en
APP_LOCALE=zh_CN
APP_FALLBACK_LOCALE=en
APP_FAKER_LOCALE=en_US

View File

@@ -1,7 +1,7 @@
FROM openeuler/openeuler:24.03
FROM openeuler/openeuler:24.03 AS dev
# 设置工作目录
WORKDIR /app
## 设置工作目录
#WORKDIR /app
# 更新系统和安装软件包
RUN dnf update -y && \
@@ -41,6 +41,43 @@ RUN npm config set registry https://registry.npmmirror.com && \
npm install -g yarn && \
yarn config set registry https://registry.npmmirror.com
FROM openeuler/openeuler:24.03 AS runtime
RUN dnf update -y \
&& dnf install php-cli php-bcmath php-mbstring php-pdo php-pecl-zip php-posix php-sodium php-xml php-intl php-opcache c-ares libcurl openssl brotli -y \
&& dnf clean all && rm -rf /var/cache/dnf/*
RUN mkdir -p /usr/lib64/php/modules/
COPY --from=dev /usr/lib64/php/modules/zstd.so /usr/lib64/php/modules/zstd.so
COPY --from=dev /usr/lib64/php/modules/swoole.so /usr/lib64/php/modules/swoole.so
RUN echo "extension=/usr/lib64/php/modules/zstd.so" > /etc/php.d/20-zstd.ini \
&& echo "extension=/usr/lib64/php/modules/swoole.so" > /etc/php.d/50-swoole.ini
RUN sed -i 's/memory_limit\s*=.*/memory_limit = 4096M/g' /etc/php.ini
WORKDIR /app
FROM dev AS build
COPY . /app
WORKDIR /app
RUN composer install --no-dev --no-suggest --optimize-autoloader
RUN yarn \
&& rm -rf node_modules \
&& cp .env.example .env \
&& php artisan key:generate
FROM runtime AS release
COPY --from=build /app /app
RUN chmod +x /app/entrypoint.sh \
&& chmod +x /app/artisan
# 暴露端口
EXPOSE 8000

View File

@@ -0,0 +1,14 @@
#!/bin/bash
mkdir -p storage/app/{public,tenants}
mkdir -p storage/logs
if [ ! -f /app/storage/app/database.sqlite ]; then
cat .env
touch /app/storage/app/database.sqlite
php artisan migrate --seed --force
fi
php artisan migrate
$@