add proxy for china base host

pull/21891/head
aki 1 year ago
parent c12f8ac83d
commit 3458955883

@ -1,18 +1,28 @@
# Variables # Variables
DOCKER_REGISTRY=langgenius DOCKER_REGISTRY=akiyu303
WEB_IMAGE=$(DOCKER_REGISTRY)/dify-web WEB_IMAGE=$(DOCKER_REGISTRY)/lefeng-web
API_IMAGE=$(DOCKER_REGISTRY)/dify-api API_IMAGE=$(DOCKER_REGISTRY)/lefeng-api
VERSION=latest VERSION=latest
# Build Docker images # Build Docker images
build-web: build-web:
@echo "Building web Docker image: $(WEB_IMAGE):$(VERSION)..." @echo "Building web Docker image: $(WEB_IMAGE):$(VERSION)..."
docker build -t $(WEB_IMAGE):$(VERSION) ./web docker build \
--build-arg HTTP_PROXY=http://host.docker.internal:1081 \
--build-arg HTTPS_PROXY=http://host.docker.internal:1081 \
--build-arg NO_PROXY=localhost,127.0.0.1 \
--add-host=host.docker.internal:host-gateway \
-t $(WEB_IMAGE):$(VERSION) ./web
@echo "Web Docker image built successfully: $(WEB_IMAGE):$(VERSION)" @echo "Web Docker image built successfully: $(WEB_IMAGE):$(VERSION)"
build-api: build-api:
@echo "Building API Docker image: $(API_IMAGE):$(VERSION)..." @echo "Building API Docker image: $(API_IMAGE):$(VERSION)..."
docker build -t $(API_IMAGE):$(VERSION) ./api docker build \
--build-arg HTTP_PROXY=http://host.docker.internal:1081 \
--build-arg HTTPS_PROXY=http://host.docker.internal:1081 \
--build-arg NO_PROXY=localhost,127.0.0.1 \
--add-host=host.docker.internal:host-gateway \
-t $(API_IMAGE):$(VERSION) ./api
@echo "API Docker image built successfully: $(API_IMAGE):$(VERSION)" @echo "API Docker image built successfully: $(API_IMAGE):$(VERSION)"
# Push Docker images # Push Docker images

@ -1,6 +1,14 @@
# base image # base image
FROM python:3.12-slim-bookworm AS base FROM python:3.12-slim-bookworm AS base
# Add proxy configuration
ARG HTTP_PROXY
ARG HTTPS_PROXY
ARG NO_PROXY
ENV HTTP_PROXY=${HTTP_PROXY}
ENV HTTPS_PROXY=${HTTPS_PROXY}
ENV NO_PROXY=${NO_PROXY}
WORKDIR /app/api WORKDIR /app/api
# Install Poetry # Install Poetry
@ -19,6 +27,10 @@ ENV POETRY_VIRTUALENVS_CREATE=true
ENV POETRY_REQUESTS_TIMEOUT=15 ENV POETRY_REQUESTS_TIMEOUT=15
FROM base AS packages FROM base AS packages
# Inherit proxy settings from base
ENV HTTP_PROXY=${HTTP_PROXY}
ENV HTTPS_PROXY=${HTTPS_PROXY}
ENV NO_PROXY=${NO_PROXY}
# if you located in China, you can use aliyun mirror to speed up # if you located in China, you can use aliyun mirror to speed up
# RUN sed -i 's@deb.debian.org@mirrors.aliyun.com@g' /etc/apt/sources.list.d/debian.sources # RUN sed -i 's@deb.debian.org@mirrors.aliyun.com@g' /etc/apt/sources.list.d/debian.sources
@ -30,8 +42,18 @@ RUN apt-get update \
COPY pyproject.toml poetry.lock ./ COPY pyproject.toml poetry.lock ./
RUN poetry install --sync --no-cache --no-root RUN poetry install --sync --no-cache --no-root
FROM base AS builder
# Inherit proxy settings from base
ENV HTTP_PROXY=${HTTP_PROXY}
ENV HTTPS_PROXY=${HTTPS_PROXY}
ENV NO_PROXY=${NO_PROXY}
# production stage # production stage
FROM base AS production FROM base AS production
# Inherit proxy settings from base
ENV HTTP_PROXY=${HTTP_PROXY}
ENV HTTPS_PROXY=${HTTPS_PROXY}
ENV NO_PROXY=${NO_PROXY}
ENV FLASK_APP=app.py ENV FLASK_APP=app.py
ENV EDITION=SELF_HOSTED ENV EDITION=SELF_HOSTED

@ -2,6 +2,14 @@
FROM node:20-alpine3.20 AS base FROM node:20-alpine3.20 AS base
LABEL maintainer="takatost@gmail.com" LABEL maintainer="takatost@gmail.com"
# Add proxy configuration
ARG HTTP_PROXY
ARG HTTPS_PROXY
ARG NO_PROXY
ENV HTTP_PROXY=${HTTP_PROXY}
ENV HTTPS_PROXY=${HTTPS_PROXY}
ENV NO_PROXY=${NO_PROXY}
# if you located in China, you can use aliyun mirror to speed up # if you located in China, you can use aliyun mirror to speed up
# RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories # RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
@ -10,6 +18,10 @@ RUN apk add --no-cache tzdata
# install packages # install packages
FROM base AS packages FROM base AS packages
# Inherit proxy settings from base
ENV HTTP_PROXY=${HTTP_PROXY}
ENV HTTPS_PROXY=${HTTPS_PROXY}
ENV NO_PROXY=${NO_PROXY}
WORKDIR /app/web WORKDIR /app/web
@ -23,6 +35,11 @@ RUN yarn install --frozen-lockfile
# build resources # build resources
FROM base AS builder FROM base AS builder
# Inherit proxy settings from base
ENV HTTP_PROXY=${HTTP_PROXY}
ENV HTTPS_PROXY=${HTTPS_PROXY}
ENV NO_PROXY=${NO_PROXY}
WORKDIR /app/web WORKDIR /app/web
COPY --from=packages /app/web/ . COPY --from=packages /app/web/ .
COPY . . COPY . .
@ -32,6 +49,10 @@ RUN yarn build
# production stage # production stage
FROM base AS production FROM base AS production
# Inherit proxy settings from base
ENV HTTP_PROXY=${HTTP_PROXY}
ENV HTTPS_PROXY=${HTTPS_PROXY}
ENV NO_PROXY=${NO_PROXY}
ENV NODE_ENV=production ENV NODE_ENV=production
ENV EDITION=SELF_HOSTED ENV EDITION=SELF_HOSTED

Loading…
Cancel
Save