diff --git a/docker-compose.yml b/docker-compose.yml index b67391e..8c261f2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -7,4 +7,11 @@ services: confd: build: docker/confd prometheus: - build: docker/prometheus \ No newline at end of file + build: docker/prometheus + panel: + build: docker/panel + volumes: + - ./management-panel:/app + entrypoint: php artisan serve --host=0.0.0.0 + ports: + - 8000:8000 \ No newline at end of file diff --git a/docker/panel/Dockerfile b/docker/panel/Dockerfile new file mode 100644 index 0000000..3fa5848 --- /dev/null +++ b/docker/panel/Dockerfile @@ -0,0 +1,30 @@ +FROM openeuler/openeuler:24.03 + +RUN dnf update -y \ + && dnf install git php-cli php-bcmath php-mbstring php-pdo php-pecl-zip php-opcache php-sodium php-intl php-pear php-devel c-ares-devel libcurl-devel openssl-devel brotli brotli-devel -y \ + && dnf clean all \ + && rm -rf /var/cache/dnf/* + +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\ + && pecl channel-update https://pecl.php.net/channel.xml \ + && pecl install zstd \ + && pecl install --configureoptions 'enable-sockets="yes" enable-openssl="yes" enable-mysqlnd="no" enable-swoole-curl="yes" enable-cares="yes" enable-brotli="yes"' swoole + +RUN curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/nodejs-release/v20.16.0/node-v20.16.0-linux-x64.tar.xz | tar -xJ --strip-components=1 -C /usr/local + +RUN curl -fsSL https://getcomposer.org/download/latest-stable/composer.phar -o /usr/local/bin/composer \ + && chmod +x /usr/local/bin/composer \ + && composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ + +RUN sed -i 's/memory_limit\s*=.*/memory_limit = 1024M/g' /etc/php.ini + +RUN npm config set registry https://registry.npmmirror.com \ + && npm install -g yarn \ + && yarn config set registry https://registry.npmmirror.com + +RUN mkdir /app + +WORKDIR /app + +EXPOSE 8000 \ No newline at end of file