ARM64_Ubuntu_Chrome_Python 鏡像搭建最終版

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

  • 除去 聖誕節假期 基本上 4周多發佈一個版本.

image

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章