Docker 部署本地爬虫项目到服务器

笔记:一直想写一篇博客的,那就趁着周末闲暇时光记录一下。

目录

一、前提准备

二、Docker部署爬虫示例

整体梳理

1、打包构建本地项目镜像

2、在 hub 网站上 创建一个仓库。

3、将本地镜像与hub上的仓库打上标签

4、确保已登录 Dockerhub 账号

5、推送镜像到 Dockerhub 仓库中

6、推送上传成功可去 hub 上查看 

7、拉取 hub 镜像 

8、测试运行


一、前提准备

我是 Windows 11 环境的,要先整一个 Docker Desktop 对于它的安装这里不记录,可以参考一下这篇博客(挺详细的) Docker Desktop 安装使用教程_dockerdesktop安装-CSDN博客

二、Docker部署爬虫示例

首先要有你本地的爬虫项目,想省事的朋友,我这里准备了测试项目,git 地址:bind_news · YXHLHM/docker_test - 码云 - 开源中国 (gitee.com) mysql 表在 init 文件中。

结构如下图:

Docker 部署本地爬虫项目到服务器_第1张图片

  • 整体梳理

  • 打包 项目依赖命令:
pipreqs ./ --encoding=utf-8
  • Dockerfile:运行 main.py  (更多的编写命令可以百度查一下)

Docker 部署本地爬虫项目到服务器_第2张图片

  • main.py:运行要执行的爬虫脚本

Docker 部署本地爬虫项目到服务器_第3张图片

这里注意要启动的爬虫脚本命令  /bind_news/aaa_inf3.py   bind_news 是你 Dockerfile 中创建的工作目录。

下面进行 docker 相关的操作

1、打包构建本地项目镜像

cmd 进入本地项目根目录进行构建:要先运行起你的 Docker Desktop

docker build -t csdn:v1.0.0 .

# csdn   -- 镜像的名称 -- 随便起
# v1.0.0 -- 版本标签 -- 随便起 
# . 是将 Dockerfile 所在的工作目录 (项目根目录) 下的所有的文件进行构建,这里是将爬虫项目的所有文件构建打包,

Docker 部署本地爬虫项目到服务器_第4张图片

2、在 hub 网站上 创建一个仓库。

这个是外网要挂一个代理,它地址:Docker Hub

Docker 部署本地爬虫项目到服务器_第5张图片

3、将本地镜像与hub上的仓库打上标签

先查看本地镜像:docker images 

docker tag  160e513ebf4b  yxhlhm/csdn:v1.0.0

# docker tag 镜像id dockerhub账号名称/hub仓库名称:标签

Docker 部署本地爬虫项目到服务器_第6张图片

4、确保已登录 Dockerhub 账号

docker login -u 用户名 -p 密码

如果提示不让执行,就直接输入:docker login 进行键入登录。下图登录成功

Docker 部署本地爬虫项目到服务器_第7张图片

或者直接用Docker desktop 登录你的 hub 账号就ok,下图:

Docker 部署本地爬虫项目到服务器_第8张图片

出现问题的话可以去看看:docker login Error response from daemon: Get "https://registry-1.docker.io/v_mob64ca12db3721的技术博客_51CTO博客icon-default.png?t=N7T8https://blog.51cto.com/u_16213344/7074965

5、推送镜像到 Dockerhub 仓库中

docker push yxhlhm/csdn:v1.0.0

docker push dockerhub账号/dockerhub仓库名称:标签

Docker 部署本地爬虫项目到服务器_第9张图片

6、推送上传成功可去 hub 上查看 

Docker 部署本地爬虫项目到服务器_第10张图片

7、拉取 hub 镜像 

docker pull yxhlhm/csdn:v1.0.0

Docker 部署本地爬虫项目到服务器_第11张图片

8、测试运行

1、可以直接在 Docker desktop 上 run 运行:

Docker 部署本地爬虫项目到服务器_第12张图片

2、服务器拉取运行

docker pull yxhlhm/csdn:v1.0.0

简单 run 一下:

docker run 镜像ID

Docker 部署本地爬虫项目到服务器_第13张图片

MySQL 中:

Docker 部署本地爬虫项目到服务器_第14张图片

其实把它想成 git 就好理解了。

拜,简单记录一下。

你可能感兴趣的:(笔记,爬虫练习,docker,容器,运维)