话不多说直接开干
1、新建一个文件夹docker-selenium来做项目目录
编写docker-compose.yml
version: "3"
services:
python:
container_name : python
build :
context : ./python
dockerfile : Dockerfile
volumes:
- ./shm/spider.py:/code/spider.py # 这里把刚刚的代码映射到这个目录
command: python /code/spider.py # 定义启动容器执行的命令
depends_on:
- chrome
chrome:
image: selenium/standalone-chrome:latest
ports:
- "4444:4444"
shm_size: 2g
2、编写Dockerfile
FROM python:3.8.0
COPY requirements.txt /code/requirements.txt
RUN pip install -r /code/requirements.txt -i https://pypi.douban.com/simple
WORKDIR /code
CMD ["/bin/bash"]
3、编写运行python自动化需要安装的py插件 requirements.txt
requests
selenium
redis
4、编写需要处理的python 脚本
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
driver = webdriver.Remote(
command_executor="http://chrome:4444/wd/hub",
desired_capabilities=DesiredCapabilities.CHROME
)
driver.get("http://www.baidu.com")
print(driver.title)
driver.close()
5、docker bulid -t baidu . 构建一个对象 baidu
6、docker images可以看到,你创建的这个baidu
7、最后,直接执行 docker-compose up,就开始运行你的自动化程序了
不积跬步,无以至千里
滴水之恩,学习来自-Docker实践:python应用容器化 - 三只松鼠 - 博客园