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

news2024/12/28 4:57:08

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

目录

一、前提准备

二、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 文件中。

结构如下图:

  • 整体梳理

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

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

这里注意要启动的爬虫脚本命令  /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 所在的工作目录 (项目根目录) 下的所有的文件进行构建,这里是将爬虫项目的所有文件构建打包,

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

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

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

先查看本地镜像:docker images 

docker tag  160e513ebf4b  yxhlhm/csdn:v1.0.0

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

4、确保已登录 Dockerhub 账号

docker login -u 用户名 -p 密码

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

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

出现问题的话可以去看看: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仓库名称:标签

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

7、拉取 hub 镜像 

docker pull yxhlhm/csdn:v1.0.0

8、测试运行

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

2、服务器拉取运行

docker pull yxhlhm/csdn:v1.0.0

简单 run 一下:

docker run 镜像ID

MySQL 中:

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

拜,简单记录一下。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1117773.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一键掌握多家快递信息,快递批量查询高手软件助你高效管理物流

一键掌握多家快递信息,快递批量查询高手软件助你高效管理物流 在当今这个高度信息化的时代,快递行业的发展可谓日新月异。随着网购的普及,如何高效、准确地掌握多家快递公司的信息,成为了很多消费者和管理者面临的难题。为了解决…

fastadmin笔记,fastadmin表格功能

fastadmin笔记 官方文档请到: https://ask.fastadmin.net/article/323.html自行查阅 1、默认有个切换功能。 浏览模式可以切换卡片视图和表格视图两种模式,如果不需要此功能 在该控制器对应的js 文件中添加上showToggle:false即可。 2、导出功能 …

谷歌浏览器误代码STATUS_INVALID_IMAGE_HASH如何一行代码解决

一、直入主题: 1.谷歌浏览器突然就不能用了,如下图: 2.如何解决 --test-type -no-sandbox 卸载浏览器重装还是一样的问题,目前我们的谷歌浏览器版本号:Chrome 已是最新版本 版本 118.0.5993.89(正式版本&a…

2023年中职组“网络安全”赛项 云南省竞赛任务书

2023年中职组“网络安全”赛项 云南省竞赛任务书 一、竞赛时间 总计:360分钟 二、竞赛阶段 竞赛阶段 任务阶段 竞赛任务 竞赛时间 分值 A模块 A-1 登录安全加固 180分钟 200分 A-2 本地安全策略配置 A-3 流量完整性保护 A-4 事件监控 A-5 服务加固 A-6 防火墙策…

同步网盘选择指南:哪个同步网盘更好用?

同步盘是当下热门的云存储服务之一,它可以将您的文件在不同设备之间进行同步,使您可以随时随地访问和共享您的文件,因此受到了许多用户的喜爱。 一、什么是同步盘 首先到底什么是同步盘?同步盘是指一种云存储服务,它…

回归预测 | MATLAB实现BO-GRU贝叶斯优化门控循环单元多输入单输出回归预测

回归预测 | MATLAB实现BO-GRU贝叶斯优化门控循环单元多输入单输出回归预测 目录 回归预测 | MATLAB实现BO-GRU贝叶斯优化门控循环单元多输入单输出回归预测效果一览基本介绍模型搭建程序设计参考资料 效果一览 基本介绍 MATLAB实现BO-GRU贝叶斯优化门控循环单元回归预测。基于贝…

开关电源负载调整率测试规范国标有哪些?负载调整率测试方法是什么?

负载调整率是用来描述在额定电压下负载电流从0变化到最大时,输出电压相应的变化情况。它是衡量电源芯片好坏的重要指标,因此负载调整率测试是必不可少的环节。那么要如何测试电源芯片负载调整率呢?有哪些测试规范呢? 开关电源芯片测试规范 适用范围&am…

沃通SSL证书服务多省区一体化政务服务平台

近年来,我国政务服务数字化水平不断提升,数字政府建设取得积极成效。依托全国一体化政务服务平台,政务服务效能不断提升,“一网通办”能力显著增强,为创新政府治理、优化营商环境提供了有力支撑。沃通SSL证书具备保护数…

C语言判断设备存储是大端还是小端

一、运行结果 二、源代码 # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>//实现判断函数&#xff1b; int check_sys() {//初始化变量值&#xff1b;int a 1;//判断并返回值&#xff1b;return (*(char*)&a); }int main() {//调用判断内存函数&#xff1b;…

内存拷贝函数 memcpy 的原理及实现

memcpy是memory copy的缩写&#xff0c;意为内存复制&#xff0c;在写C语言程序的时候&#xff0c;我们常常会用到它。它的函原型如下&#xff1a; void *memcpy(void *dest, const void *src, size_t n);它的功能是从src的开始位置拷贝n个字节的数据到dest。如果dest存在数据…

Easyx趣味编程,鼠标消息读取及音频播放(坤坤播放器)

hello大家好&#xff0c;这里是dark flame master&#xff0c;今天给大家带来Easyx图形库最后一节功能实现的介绍&#xff0c;前边介绍了绘制各种图形及键盘交互&#xff0c;文字&#xff0c;图片等操作&#xff0c;今天就可以使写出的程序更加生动且容易操控。一起学习吧&…

选择最佳的项目管理工具:推荐哪一个?

项目管理工具推荐哪个&#xff1f;Zoho Projects项目管理工具为各类团队提供卓越的项目管理解决方案。 1、全面管理各类团队项目 Zoho Projects是一款全面的项目管理工具&#xff0c;具备简化工作流程和提高团队生产力的功能。无论是软件开发与DevOps&#xff0c;还是人力资源与…

Go语言入门心法(十二): GORM映射框架

Go语言入门心法(一): 基础语法 Go语言入门心法(二): 结构体 Go语言入门心法(三): 接口 Go语言入门心法(四): 异常体系 Go语言入门心法(五): 函数 Go语言入门心法(六): HTTP面向客户端|服务端编程 Go语言入门心法(七): 并发与通道 Go语言入门心法(八): mysql驱动安装报错o…

HTTP响应

HTTP响应分为四个部分&#xff1a; 首行&#xff1a;HTTP/1.1&#xff08;首行&#xff09; 200&#xff08;状态码&#xff09; OK&#xff08;状态码描述&#xff09;header&#xff1a;空行&#xff1a;表示header的结束标记body&#xff1a;正文 HTTP状态码&#xff1a;…

想做情感配音解说就用这个软件~

很多视频里的声音都很好听&#xff0c;有的字正腔圆&#xff0c;有的情感真挚&#xff0c;有的激昂慷慨&#xff0c;有的忧伤动人&#xff0c;但你知道吗&#xff1f;这些都不是真人配音的效果&#xff0c;而是配音软件制作合成的效果。一个好的配音可以起到事半功倍的效果。今…

C#中各种循环遍历的功能与应用

在C#编程中&#xff0c;循环遍历是一种重要的技巧&#xff0c;它使我们能够有效地处理集合、数组和其他数据结构。本文将深入探讨C#中常见的循环遍历方式&#xff0c;包括for循环、foreach循环、while循环和do while循环&#xff0c;并给出它们在实际应用中的使用场景、示例和最…

国内外数据保护(灾备、备份、恢复、复制、归档)厂商

做在数据保护领域呆了3年&#xff0c;这里回顾一下经常接触、对比的国内外服务提供商。 国内做数据保护一般会和国外的这几家进行对比&#xff1a; commvault&#xff0c;一般简称为CV Commvault 是一家美国上市数据保护和数据管理软件公司&#xff0c;总部位于新泽西州廷顿…

STM32F4x之中断一

一、中断简介 中断概念&#xff1a;程序在运行过程中发生了外部或内部事件时&#xff0c;导致中断了正在执行的程序&#xff0c;让CPU转到外部或内部事件中去执行。 中断的作用&#xff1a;大量节约CPU资源&#xff0c;提高程序的效率&#xff0c;即避免重要事件被错过。 中断…

深度强化学习 第 5 章 SARSA 算法

上一章介绍了 Q 学习的表格形式和神经网络形式&#xff08;即 DQN&#xff09;。 TD 算法是一大类算法的总称。上一章用的 Q 学习是一种 TD 算法&#xff0c; Q 学习的目的是学习最优动作价值函数 Q ⋆ Q_⋆ Q⋆​ 本章介绍 SARSA&#xff0c;它也是一种 TD 算法&#xff0c; S…

vue3 + fastapi 实现选择目录所有文件自定义上传到服务器

文章目录 ⭐前言&#x1f496; 技术栈选择 ⭐前端页面搭建&#x1f496; 调整请求content-type传递formData ⭐后端接口实现&#x1f496; swagger文档测试接口 ⭐前后端实现效果&#x1f496; 上传单个文件&#x1f496; 上传目录文件 ⭐总结⭐结束 ⭐前言 大家好&#xff0c…