ARM64_Ubuntu_Chrome_Python 映象搭建最終版
dockerfile
FROM ubuntu:24.04
RUN apt-get update && apt-get install gnupg -y && apt-get clean
RUN sh <<EOF
cat > /etc/apt/sources.list <<EOS
deb http://ftp.de.debian.org/debian sid main
EOS
EOF
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 0E98404D386FA1D9
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 40976EAF437D05B5
RUN apt-key export 0E98404D386FA1D9 | gpg --dearmour -o /etc/apt/trusted.gpg.d/charlesproxy2.gpg
RUN apt-key export 40976EAF437D05B5 | gpg --dearmour -o /etc/apt/trusted.gpg.d/charlesproxy3.gpg
RUN apt-get update && DEBIAN_FRONTEND=noninteractive TZ="Asia/Shanghai" apt-get install ttf-wqy-microhei ttf-wqy-zenhei xfonts-wqy chromium chromium-driver -y && apt-get clean
ADD python3.12.2_aach64.tar.gz /opt/
RUN ln -s /usr/bin/chromium /usr/bin/chrome && ln -s /usr/bin/chromium /opt/python3/bin/chrome && ln -s /usr/bin/chromedriver /opt/python3/bin/chromedriver
ENV PATH=$PATH:/opt/python3/bin/
使用方式
建議每四周打包一次.
這樣的話會 利用 debian的倉庫
每次拉去最新的 chrome版本.
打包方式:
docker build . -t ubuntu:2404chromepython20240407
確認是否可以使用
docker run -it ubuntu:2404chromepython20240407 bash
cat > /demo.py <<EOF
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
import time
chrome_options = Options()
chrome_options.add_argument("--headless")
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("--disable-gpu")
chrome_options.add_argument("--disable-dev-shm-usage")
chrome_options.add_argument("--window-size=1920,1080")
s = Service('/opt/python3/bin/chromedriver')
driver = webdriver.Chrome(service=s, options=chrome_options)
driver.get("https://www.baidu.com")
time.sleep(5)
driver.save_screenshot('/baidu_screenshot.png')
driver.quit()
EOF
驗證指令碼為:
/opt/python3/bin/python3 demo.py
檔案為:
/baidu_screenshot.png
關於版本的理解
Chrome 最開始是 6周釋出一個版本,
現在是四周釋出一個版本, 一年基本上是12個版本左右.
需要說明的事 google沒有放出來的 linux on aarch64的版本.
aarch64的版本還是比較麻煩.
chrome最近的版本