Docker部署selenium程序-从本地到云服务器-详细步骤


前言

`相信大家在本地写的selenium程序有时候会经常要在本地定时运行,但是一直放在本地总是比较繁琐,今天教大家如何用docker将本地selenium程序部署到云服务器中后台运行


一、项目文件放到服务器中

该环节主要是将本地的程序文件和依赖文件放到服务器当中

  • 1、先要把requirements.txt文件导出,
    很简单
    在项目的目录终端输入两条命令就ok了

      		  pip freeze > requirements.txt  
      		  pip install -r requirements.txt 
    
  • 使用git工具将项目拉取到云服务器中,git有小伙伴不会使用可以看一下
    git简单操作,几分钟就能使用

二、Docker在Centos7中的下载

这里如果有小伙伴未使用过Docker,可以跳转到尚硅谷Docker实战这一节学习安装
https://www.bilibili.com/video/BV1gr4y1U7CY?p=11&spm_id_from=333.880.my_history.page.click&vd_source=92669d6611115d3f4999ff10432158a9

三、设置镜像加快下载速度

  • 查看是否在docker.service文件中配置过镜像地址
systemctl cat docker | grep '\-\-registry\-mirror'

若有输出,则执行systemctl cat docker查看ExecStart出现位置,修改对应文件去掉–registry-mirror参数及其值,再执行接下来的步骤


  • 编辑/etc/docker/daemon.json文件
vi etc/docker/daemon.json
{
    "registry-mirrors": [
    "https://mirror.baidubce.com",
    "https://docker.mirrors.ustc.edu.cn/"
    ]
}


  • 保存退出镜像就设置成功了
    之后在重启一下
systemctl daemon-reload
systemctl restart docker

四、编写dockerfile

在你的main.py的目录当中vim Dockerfile创建Dockerfile文件

FROM python:3.7   # 以py3.7为镜像基础

ENV PATH /usr/local/bin$PATH  # 设置环境

ADD . /《你的项目文件名即可》


WORKDIR /《你的项目文件名即可》

RUN pip install -r requirements.txt # 下载依赖

编写完了之后执行docker build . -t selenium_py:v1
selenium_py:镜像名
v1:版本号

执行了执行docker images看是否有镜像已查看是否镜像生成成功


五、编写Docker-compose

同样在当前目录执行vim docker-compose.yml

然后在这个文件编写docker-compose:

version: "2.0"
services:
  python:
    image: selenium_py:v1
    volumes:
      - ./main.py:/root/main.py  # 将本地文件映射到容器内,前面的路径是本机的,后面的是容器的。注意:可以指定具体文件,也可以指定路径
    command: python /root/main.py  # 定义启动容器执行的命令
    depends_on:
      - chrome #映射的域名,脚本中要把域名改成这个
  chrome:
    image: selenium/standalone-chrome:latest
    ports:
      - "4444:4444"
    shm_size: 2g

保存退出


六、执行项目

这是一个简单示范

from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
import time

time.sleep(5)
driver = webdriver.Remote(
    command_executor="http://chrome:4444/wd/hub",
    desired_capabilities=DesiredCapabilities.CHROME
)            # 一定要注意这里跟本地的直接Chrome()是不一样的!!!

driver.get("https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&tn=baidu&wd=%E5%A5%B3%E7%A5%9E%E8%8A%82%E5%BF%AB%E4%B9%90&oq=iPad%25E7%2594%25BB%25E6%25B0%25B4%25E5%25BD%25A9&rsv_pq=da863c960031fa89&rsv_t=320bU5S7GOOB43J2GLgjE66RWcLR2giCuNktmA5I6Wm7VcW7dZ1It2hKWxs&rqlang=cn&rsv_enter=1&rsv_dl=tb&inputT=8595&rsv_sug3=16&rsv_sug1=14&rsv_sug7=101&rsv_sug2=0&rsv_sug4=11686")
content = driver.title.split("_")[0]
print(content)
driver.close()

执行docker-compose up

看到输出:女神节快乐
运行成功

之后就可以重新运行docker-compose up -d进行后台运行


总结

至此整个流程就结束了

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用Docker部署云服务器,你可以按照以下步骤进行操作: 1. 首先,你需要在云服务器上安装Docker CE。你可以使用以下命令安装Docker的依赖库: ``` yum install -y yum-utils device-mapper-persistent-data lvm2 ``` 2. 添加Docker CE的软件源信息,可以使用以下命令: ``` yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo ``` 3. 安装Docker CE,使用以下命令: ``` yum makecache fast yum -y install docker-ce ``` 4. 启动Docker服务,使用以下命令: ``` systemctl start docker ``` 5. 确保Docker服务已成功启动,可以使用以下命令来检查Docker的版本信息: ``` docker version ``` 6. 接下来,你可以使用git工具将你的项目拉取到云服务器中。如果你不熟悉git的使用,可以参考git的简单操作教程来学习如何使用git。 7. 最后,你可以使用Docker部署你的应用程序。你可以搜索Docker镜像仓库中的Nginx镜像版本,并根据你的需求选择一个合适的版本,使用以下命令来搜索可用的Nginx版本: ``` docker search nginx ``` 选择一个适合你的版本,并使用以下命令来拉取Nginx镜像: ``` docker pull <nginx-image-name>:<tag> ``` 这将拉取所选版本的Nginx镜像到你的云服务器中。 请注意,这只是一个大致的指南,你可能还需要根据你的具体情况进行一些额外的配置和调整。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [在云服务器快速搭建Docker环境](https://blog.csdn.net/segwy/article/details/125094348)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [Docker部署selenium程序-从本地到云服务器-详细步骤](https://blog.csdn.net/qq_51898139/article/details/126360693)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值