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最近的版本