Zayn777 commited on
Commit
3197366
·
verified ·
1 Parent(s): f1df7b5

Update Dockerfile

Browse files
Files changed (1) hide show
  1. 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/lsky-org/lsky-pro/archive/refs/heads/master.zip -o lsky-pro.zip \
37
  && unzip lsky-pro.zip \
38
- && mv lsky-pro-master/* /var/www/html/ \
39
- && mv lsky-pro-master/.* /var/www/html/ 2>/dev/null || true \
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/database \
56
- && chmod 777 /var/www/html/database/database.sqlite \
57
- && chmod -R 777 /var/www/html/public
58
-
59
- # 安装 PHP 依赖项
60
- RUN composer install --no-dev --optimize-autoloader
61
 
62
- # 复制环境配置文件并配置为使用 SQLite
63
- RUN cp .env.example .env \
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"]