Update Dockerfile
Browse files- Dockerfile +25 -57
Dockerfile
CHANGED
|
@@ -20,61 +20,32 @@ RUN apt-get update && apt-get install -y \
|
|
| 20 |
pkg-config \
|
| 21 |
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
|
| 22 |
&& docker-php-ext-install -j$(nproc) gd pdo pdo_mysql zip exif fileinfo bcmath \
|
|
|
|
|
|
|
|
|
|
| 23 |
&& apt-get clean \
|
| 24 |
&& rm -rf /var/lib/apt/lists/*
|
| 25 |
|
| 26 |
-
RUN pecl install imagick && \
|
| 27 |
-
docker-php-ext-enable imagick
|
| 28 |
-
|
| 29 |
-
RUN a2enmod rewrite mime
|
| 30 |
-
|
| 31 |
-
# 安装 Composer
|
| 32 |
-
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
|
| 33 |
-
|
| 34 |
WORKDIR /var/www/html
|
| 35 |
|
| 36 |
-
RUN curl -L https://github.com/
|
| 37 |
&& unzip lsky-pro.zip \
|
| 38 |
-
&&
|
| 39 |
-
&&
|
| 40 |
-
&& rm -rf lsky-pro.zip lsky-pro-master
|
| 41 |
-
|
| 42 |
-
# 创建所有必要的目录并设置777权限
|
| 43 |
-
RUN mkdir -p /var/www/html/storage/app/public/images \
|
| 44 |
-
&& mkdir -p /var/www/html/storage/app/public/avatars \
|
| 45 |
-
&& mkdir -p /var/www/html/storage/framework/cache \
|
| 46 |
-
&& mkdir -p /var/www/html/storage/framework/sessions \
|
| 47 |
-
&& mkdir -p /var/www/html/storage/framework/testing \
|
| 48 |
-
&& mkdir -p /var/www/html/storage/framework/views \
|
| 49 |
-
&& mkdir -p /var/www/html/storage/logs \
|
| 50 |
-
&& mkdir -p /var/www/html/bootstrap/cache \
|
| 51 |
&& mkdir -p /var/www/html/database \
|
| 52 |
&& touch /var/www/html/database/database.sqlite \
|
|
|
|
|
|
|
|
|
|
|
|
|
| 53 |
&& chmod -R 777 /var/www/html/storage \
|
| 54 |
&& chmod -R 777 /var/www/html/bootstrap/cache \
|
| 55 |
-
&& chmod -R 777 /var/www/html/
|
| 56 |
-
&&
|
| 57 |
-
&&
|
| 58 |
-
|
| 59 |
-
# 安装 PHP 依赖项
|
| 60 |
-
RUN composer install --no-dev --optimize-autoloader
|
| 61 |
|
| 62 |
-
|
| 63 |
-
|
| 64 |
-
&& sed -i 's/DB_CONNECTION=mysql/DB_CONNECTION=sqlite/g' .env \
|
| 65 |
-
&& sed -i 's/DB_DATABASE=lsky/DB_DATABASE=\/var\/www\/html\/database\/database.sqlite/g' .env \
|
| 66 |
-
&& chmod 666 .env
|
| 67 |
-
|
| 68 |
-
# 生成应用密钥
|
| 69 |
-
RUN php artisan key:generate
|
| 70 |
-
|
| 71 |
-
# 确保整个应用目录的权限正确
|
| 72 |
-
RUN chown -R www-data:www-data /var/www/html \
|
| 73 |
-
&& chmod -R 777 /var/www/html
|
| 74 |
-
|
| 75 |
-
RUN echo 'ServerName 127.0.0.1' >> /etc/apache2/apache2.conf
|
| 76 |
-
|
| 77 |
-
RUN echo '<VirtualHost *:7860>\n\
|
| 78 |
DocumentRoot /var/www/html/public\n\
|
| 79 |
ErrorLog ${APACHE_LOG_DIR}/error.log\n\
|
| 80 |
CustomLog ${APACHE_LOG_DIR}/access.log combined\n\
|
|
@@ -88,15 +59,13 @@ RUN echo '<VirtualHost *:7860>\n\
|
|
| 88 |
AllowOverride All\n\
|
| 89 |
Require all granted\n\
|
| 90 |
</Directory>\n\
|
| 91 |
-
</VirtualHost>' > /etc/apache2/sites-available/000-default.conf
|
| 92 |
-
|
| 93 |
-
RUN echo '<IfModule mod_mime.c>\n\
|
| 94 |
AddType image/jpeg .jpg .jpeg\n\
|
| 95 |
AddType image/png .png\n\
|
| 96 |
AddType image/gif .gif\n\
|
| 97 |
-
</IfModule>' >> /etc/apache2/apache2.conf
|
| 98 |
-
|
| 99 |
-
RUN sed -i 's/80/7860/g' /etc/apache2/ports.conf
|
| 100 |
|
| 101 |
RUN { \
|
| 102 |
echo 'open_basedir = /var/www/html:/tmp:/usr/local/lib/php'; \
|
|
@@ -110,18 +79,17 @@ RUN { \
|
|
| 110 |
echo 'max_execution_time = 300'; \
|
| 111 |
echo 'upload_max_filesize = 100M'; \
|
| 112 |
echo 'post_max_size = 100M'; \
|
| 113 |
-
} > /usr/local/etc/php/conf.d/custom.ini
|
| 114 |
-
|
| 115 |
-
RUN mkdir -p /var/lib/php/sessions \
|
| 116 |
&& chmod 777 /var/lib/php/sessions \
|
| 117 |
&& chown -R www-data:www-data /var/lib/php/sessions
|
| 118 |
|
| 119 |
ENV VIRTUAL_ENV=/opt/venv
|
| 120 |
-
RUN python3 -m venv $VIRTUAL_ENV
|
|
|
|
|
|
|
| 121 |
ENV PATH="$VIRTUAL_ENV/bin:$PATH"
|
| 122 |
|
| 123 |
-
RUN pip install --upgrade pip && \
|
| 124 |
-
pip install huggingface_hub cryptography
|
| 125 |
|
| 126 |
ENV APACHE_DOCUMENT_ROOT /var/www/html/public
|
| 127 |
ENV APACHE_LOG_DIR /var/log/apache2
|
|
@@ -131,4 +99,4 @@ RUN chmod +x /sync_data.sh
|
|
| 131 |
|
| 132 |
EXPOSE 7860
|
| 133 |
|
| 134 |
-
CMD ["/sync_data.sh"]
|
|
|
|
| 20 |
pkg-config \
|
| 21 |
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
|
| 22 |
&& docker-php-ext-install -j$(nproc) gd pdo pdo_mysql zip exif fileinfo bcmath \
|
| 23 |
+
&& pecl install imagick \
|
| 24 |
+
&& docker-php-ext-enable imagick \
|
| 25 |
+
&& a2enmod rewrite mime \
|
| 26 |
&& apt-get clean \
|
| 27 |
&& rm -rf /var/lib/apt/lists/*
|
| 28 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 29 |
WORKDIR /var/www/html
|
| 30 |
|
| 31 |
+
RUN curl -L https://github.com/zjmkkk/lsky-pro/releases/download/lsky-pro/lsky-pro.zip -o lsky-pro.zip \
|
| 32 |
&& unzip lsky-pro.zip \
|
| 33 |
+
&& rm lsky-pro.zip \
|
| 34 |
+
&& touch /var/www/html/.env \
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 35 |
&& mkdir -p /var/www/html/database \
|
| 36 |
&& touch /var/www/html/database/database.sqlite \
|
| 37 |
+
&& mkdir -p /var/www/html/storage/app/public/images \
|
| 38 |
+
&& mkdir -p /var/www/html/public/storage \
|
| 39 |
+
&& chmod 777 /var/www/html/.env \
|
| 40 |
+
&& chmod -R 777 /var/www/html/database \
|
| 41 |
&& chmod -R 777 /var/www/html/storage \
|
| 42 |
&& chmod -R 777 /var/www/html/bootstrap/cache \
|
| 43 |
+
&& chmod -R 777 /var/www/html/public \
|
| 44 |
+
&& ln -sf /var/www/html/storage/app/public /var/www/html/public/storage \
|
| 45 |
+
&& chown -R www-data:www-data /var/www/html
|
|
|
|
|
|
|
|
|
|
| 46 |
|
| 47 |
+
RUN echo 'ServerName 127.0.0.1' >> /etc/apache2/apache2.conf \
|
| 48 |
+
&& echo '<VirtualHost *:7860>\n\
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 49 |
DocumentRoot /var/www/html/public\n\
|
| 50 |
ErrorLog ${APACHE_LOG_DIR}/error.log\n\
|
| 51 |
CustomLog ${APACHE_LOG_DIR}/access.log combined\n\
|
|
|
|
| 59 |
AllowOverride All\n\
|
| 60 |
Require all granted\n\
|
| 61 |
</Directory>\n\
|
| 62 |
+
</VirtualHost>' > /etc/apache2/sites-available/000-default.conf \
|
| 63 |
+
&& echo '<IfModule mod_mime.c>\n\
|
|
|
|
| 64 |
AddType image/jpeg .jpg .jpeg\n\
|
| 65 |
AddType image/png .png\n\
|
| 66 |
AddType image/gif .gif\n\
|
| 67 |
+
</IfModule>' >> /etc/apache2/apache2.conf \
|
| 68 |
+
&& sed -i 's/80/7860/g' /etc/apache2/ports.conf
|
|
|
|
| 69 |
|
| 70 |
RUN { \
|
| 71 |
echo 'open_basedir = /var/www/html:/tmp:/usr/local/lib/php'; \
|
|
|
|
| 79 |
echo 'max_execution_time = 300'; \
|
| 80 |
echo 'upload_max_filesize = 100M'; \
|
| 81 |
echo 'post_max_size = 100M'; \
|
| 82 |
+
} > /usr/local/etc/php/conf.d/custom.ini \
|
| 83 |
+
&& mkdir -p /var/lib/php/sessions \
|
|
|
|
| 84 |
&& chmod 777 /var/lib/php/sessions \
|
| 85 |
&& chown -R www-data:www-data /var/lib/php/sessions
|
| 86 |
|
| 87 |
ENV VIRTUAL_ENV=/opt/venv
|
| 88 |
+
RUN python3 -m venv $VIRTUAL_ENV \
|
| 89 |
+
&& $VIRTUAL_ENV/bin/pip install --upgrade pip \
|
| 90 |
+
&& $VIRTUAL_ENV/bin/pip install huggingface_hub cryptography
|
| 91 |
ENV PATH="$VIRTUAL_ENV/bin:$PATH"
|
| 92 |
|
|
|
|
|
|
|
| 93 |
|
| 94 |
ENV APACHE_DOCUMENT_ROOT /var/www/html/public
|
| 95 |
ENV APACHE_LOG_DIR /var/log/apache2
|
|
|
|
| 99 |
|
| 100 |
EXPOSE 7860
|
| 101 |
|
| 102 |
+
CMD ["/sync_data.sh"]
|