Compare commits

8 Commits

Author SHA1 Message Date
9f308af6b0 #tradewind:add gitignore 2022-11-16 15:23:27 +08:00
c29903b394 #tradewind:update 2022-11-16 15:21:20 +08:00
ddce943c33 #tradewind:update 2022-07-12 15:30:48 +08:00
4a4b03836d #tradewind:update 2021-07-30 11:37:01 +08:00
fd2c7c00dc #tradewind:update 2021-06-25 16:09:49 +08:00
f8cd066ef2 #tradewind:update php repo 2021-06-24 15:50:59 +08:00
0041f06ff1 #tradewind:update php repo 2021-06-24 15:49:21 +08:00
5fa3908c72 #tradewind:update php repo 2021-06-24 15:43:35 +08:00
7 changed files with 91 additions and 50 deletions

3
.gitignore vendored
View File

@@ -1,4 +1,5 @@
.idea
*.iml
log
.env
.env
.DS_Store

View File

@@ -16,7 +16,7 @@ services:
- ./log/nginx:/var/log/nginx
container_name: nginx
restart: always
php7.4:
php74:
build:
context: ./php7.4/
dockerfile: dockerfile
@@ -55,5 +55,16 @@ services:
ports:
- 6379:6379
container_name: redis
python:
build:
context: ./
dockerfile: dockerfile
volumes:
- ${LOCAL_CODE_ROOT}:/code
networks:
- server
container_name: python
ports:
- 8000:8000
networks:
server:

View File

@@ -8,7 +8,7 @@ server {
}
location ~ \.php$ {
fastcgi_pass php7.4:9000;
fastcgi_pass php74:9000;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

View File

@@ -1,42 +1,41 @@
FROM php:7.4-fpm-alpine
FROM php:7.4-fpm
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
RUN sed -i "s@http://deb.debian.org@http://mirrors.aliyun.com@g" /etc/apt/sources.list
RUN apk add --no-cache --virtual .build-deps \
$PHPIZE_DEPS \
curl-dev \
imagemagick-dev \
libtool \
libxml2-dev \
postgresql-dev \
sqlite-dev \
&& apk add --no-cache \
curl \
git \
imagemagick \
mysql-client \
postgresql-libs \
openssl \
libzip-dev \
&& pecl install imagick \
&& docker-php-ext-enable imagick \
&& pecl install xdebug-3.0.4 \
&& docker-php-ext-enable xdebug \
&& docker-php-ext-install \
curl \
iconv \
pdo \
pdo_mysql \
pdo_pgsql \
pdo_sqlite \
pcntl \
tokenizer \
xml \
zip \
&& curl -s https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin/ --filename=composer \
&& apk del -f .build-deps
RUN apt-get update && apt-get install -y \
git \
zip \
unzip \
libpq-dev \
libzip-dev \
libpng-dev \
libfreetype6-dev \
libxml2-dev \
libicu-dev \
libjpeg62-turbo-dev \
&& docker-php-ext-configure intl \
&& docker-php-ext-install -j$(nproc) \
bcmath \
pdo_mysql \
pdo_pgsql \
gd \
zip \
exif \
sockets \
intl \
soap \
&& pecl install \
redis \
xdebug \
mongodb \
&& docker-php-ext-enable \
redis \
xdebug \
mongodb \
&& apt-get clean \
&& apt-get autoclean
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
# 修改 composer 为国内镜像
RUN composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer/
WORKDIR /var/www

View File

@@ -1,10 +1,10 @@
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free

24
python/dockerfile Normal file
View File

@@ -0,0 +1,24 @@
FROM python:3.9-alpine3.13 as build
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g' /etc/apk/repositories \
&& apk update \
&& apk add git gcc g++ musl-dev libffi-dev libressl-dev make
WORKDIR /install
COPY requirements.txt /install/requirements.txt
RUN pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r /install/requirements.txt \
&& mkdir -p /install/lib/python3.9/site-packages \
&& cp -rp /usr/local/lib/python3.9/site-packages /install/lib/python3.9 \
&& cp -p /usr/local/bin/uvicorn /install/uvicorn
FROM python:3.9-alpine3.13
# This hack is widely applied to avoid python printing issues in docker containers.
# See: https://github.com/Docker-Hub-frolvlad/docker-alpine-python3/pull/13
ENV PYTHONUNBUFFERED=1
COPY --from=build /install/lib /usr/local/lib
COPY --from=build /install/uvicorn /usr/local/bin/uvicorn
WORKDIR /code
CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8000", "--reload"]

6
python/requirements.txt Normal file
View File

@@ -0,0 +1,6 @@
fastapi
python-multipart
python_jose[cryptography]
SQLAlchemy[sqlite]
uvicorn[standard]
passlib[bcrypt]