Skip to content

Commit

Permalink
Replace Docker Hub with Aliyun repositories
Browse files Browse the repository at this point in the history
  • Loading branch information
ARC-MX committed Jun 7, 2024
1 parent 11c4bac commit 81b685d
Show file tree
Hide file tree
Showing 6 changed files with 45 additions and 20 deletions.
19 changes: 16 additions & 3 deletions .github/workflows/docker-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,24 @@ jobs:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1

- name: Log into registry
run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- name: Log into docker hub registry
run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin

- name: Build and push Docker image
run: |
PLATFORMS=linux/arm64,linux/amd64,linux/arm/v7
DOCKER_IMAGE=arcw/sgcc_electricity
docker buildx build --platform $PLATFORMS -t $DOCKER_IMAGE:latest -t $DOCKER_IMAGE:1.4.0 --file Dockerfile-for-github-action --push .
docker buildx build --platform $PLATFORMS -t $DOCKER_IMAGE:latest -t $DOCKER_IMAGE:1.4.0 --file Dockerfile-for-github-action --push .
- name: pull Docker image
run: |
docker pull mongo:4.4.18
docker tag mongo:4.4.18 registry.cn-hangzhou.aliyuncs.com/arcw/mongo:4.4.18
- name: Log into Aliyun hub registry and push Docker image
run: |
echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.ALIYUN_USERNAME }} --password-stdin registry.cn-hangzhou.aliyuncs.com
PLATFORMS=linux/arm64,linux/amd64,linux/arm/v7
DOCKER_IMAGE=registry.cn-hangzhou.aliyuncs.com/arcw/sgcc_electricity
docker buildx build --platform $PLATFORMS -t $DOCKER_IMAGE:latest -t $DOCKER_IMAGE:1.4.0 --file Dockerfile-for-github-action --push .
docker push registry.cn-hangzhou.aliyuncs.com/arcw/mongo:4.4.18
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM python:3.8-slim-buster as build
FROM python:3.9-bullseye as build

ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
Expand Down
33 changes: 19 additions & 14 deletions Dockerfile-for-github-action
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ ARG TARGETARCH
WORKDIR /app

# COPY scripts/* /app/
COPY ./requirements.txt /tmp/requirements.txt

RUN apt-get --allow-releaseinfo-change update \
&& apt-get install -y --no-install-recommends jq chromium chromium-driver tzdata \
Expand All @@ -19,19 +18,25 @@ RUN apt-get --allow-releaseinfo-change update \
&& apt-get clean

RUN cd /tmp \
&& python3 -m pip install --upgrade pip

RUN if [${TARGETARCH} == "arm"]; then \
cd /tmp \
&& curl -O -L https://github.com/nknytk/built-onnxruntime-for-raspberrypi-linux/blob/master/wheels/bullseye/onnxruntime-1.16.0-cp39-cp39-linux_armv7l.whl \
&& PIP_ROOT_USER_ACTION=ignore pip3 install onnxruntime-1.16.0-cp39-cp39-linux_armv7l.whl \
&& PIP_ROOT_USER_ACTION=ignore pip3 install cmake==3.14.3; \
fi

RUN if [${TARGETARCH} == "arm64"]; then \
cd /tmp \
&& PIP_ROOT_USER_ACTION=ignore pip3 install onnxruntime==1.17.3; \
fi
&& python3 -m pip install --upgrade pip \
&& echo '#!/bin/bash\n \
if [ "$TARGETARCH" = "arm" ]; then\n \
cd /tmp\n \
curl -O -L https://github.com/maxisoft/pytorch-arm/releases/download/v1.0.0/numpy-1.23.5-cp39-cp39-linux_armv7l.whl\n \
curl -v -o onnxruntime-1.16.0-cp39-cp39-linux_armv7l.whl https://github.com/nknytk/built-onnxruntime-for-raspberrypi-linux/blob/master/wheels/bullseye/onnxruntime-1.16.0-cp39-cp39-linux_armv7l.whl\n \
PIP_ROOT_USER_ACTION=ignore pip3 install numpy-1.23.5-cp39-cp39-linux_armv7l.whl\n \
PIP_ROOT_USER_ACTION=ignore pip3 install onnxruntime-1.16.0-cp39-cp39-linux_armv7l.whl\n \
else\n \
cd /tmp\n \
PIP_ROOT_USER_ACTION=ignore pip3 install numpy==1.23.5 onnxruntime==1.17.3 \n \
fi \n' > ./targetArch.sh \
&& bash ./targetArch.sh \
&& rm -rf /tmp/* \
&& pip cache purge \
&& rm -rf /var/lib/apt/lists/* \
&& rm -rf /var/log/*

COPY ./requirements.txt /tmp/requirements.txt

RUN cd /tmp \
&& PIP_ROOT_USER_ACTION=ignore pip install \
Expand Down
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,8 @@

```bash
git clone https://github.com/ARC-MX/sgcc_electricity_new.git
# 如果github网络环境不好的话可以使用国内镜像,完全同步的,个人推荐使用国内镜像
# git clone https://gitee.com/ARC-MX/sgcc_electricity_new.git
cd sgcc_electricity_new
```
3. 创建环境变量文件
Expand Down Expand Up @@ -110,6 +112,10 @@
```
4. 运行

我已经优化了镜像环境,将镜像的地址配置为阿里云,如果要使用docker hub的源可以将docker-compose.yml中
image: registry.cn-hangzhou.aliyuncs.com/arcw/sgcc_electricity:latest 改为 arcw/sgcc_electricity:latest
image: registry.cn-hangzhou.aliyuncs.com/arcw/mongo:4.4.18 改为 mongo:4.4.18

```bash
docker compose up --build
# 或者后台运行
Expand Down
4 changes: 2 additions & 2 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ services:
- .env
depends_on:
- mongo
image: arcw/sgcc_electricity:latest # armv8
image: registry.cn-hangzhou.aliyuncs.com/arcw/sgcc_electricity:latest # for use docker.io: arcw/sgcc_electricity:latest
# build:
# context: .
# dockerfile: Dockerfile
Expand All @@ -22,7 +22,7 @@ services:
command: python3 main.py
# 默认将近30天数据写入mongo数据库,方便查询
mongo:
image: mongo:4.4.18
image: registry.cn-hangzhou.aliyuncs.com/arcw/mongo:4.4.18 # for use docker.io: mongo:4.4.18
restart: always
container_name: mongo-for-sgcc
networks:
Expand Down
1 change: 1 addition & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,5 @@ Pillow==9.2.0
undetected_chromedriver==3.4.7
pymongo~=3.12.0
# onnxruntime==1.17.3
# numpy==1.24.3
python-dotenv

0 comments on commit 81b685d

Please sign in to comment.