在docker上部署fastapi的相关操作

docker笔记

删除同名、旧的镜像:

docker rmi -f <镜像名>

加载镜像的压缩文件tar:

docker load -i <tar 文件路径>

查看一下镜像是否加载成功:

docker images

若成功则运行:

docker run -d -p 4399:4399 <镜像名news-extract-app>

在开发完毕后,导出镜像,并在服务器centos加载镜像,运行至容器:

可以手动输入以下内容:

也可以配置docker-compose.yml文件:

powershell 复制代码
version: '3'
services:
  my_service:
    container_name: my_custom_name  # 指定容器名称
    image: my_image:latest
    ports:
      - "8080:80"
    restart: always

docker中的删除:

删除容器:

docker rm -f <容器名、容器ID>

删除镜像:

docker rmi -f <镜像名、镜像ID>

遇到的问题:

1、无法爬取

向deepseek提问:

我使用以下的方法爬取湖北省人社厅网站的新闻内容,在window笔记本上可以成功爬取,但是在部署在centos服务器上面以后,该方法就失效了,请问是什么原因?

python 复制代码
def get_html(url):
	"""
	爬取网站全部内容
	:param url:
	:return: 网页全文
	"""
	import ssl
	ssl._create_default_https_context = ssl._create_unverified_context
	user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"
	cookie = "_trs_uv=mdd9cdiy_3009_1wb9; dataHide2=dbaf775e-22e6-4f5e-9360-df420cd038ff; Hm_lvt_e3087ee394f1febddf04f9d5c3037764=1753111556; HMACCOUNT=620DBE542AFF237B; _trs_gv=g_mdd9cdiy_3009_1wb9; _trs_ua_s_1=mdeldg06_3009_djho; Hm_lpvt_e3087ee394f1febddf04f9d5c3037764=1753192231"
	headers = {'User-Agent': user_agent}
	request = Request(url, headers=headers,  method='GET')
	response = urllib.request.urlopen(request)
	contents = response.read()
	soup = BeautifulSoup(contents, "html5lib")
	return soup

deepseek解决:

项目部署到本地docker

创建fastapi项目

此处参考:博客

目录结构

python 复制代码
% tree
.
├── Dockerfile
├── app
│   └── main.py
└── requirements.txt

构建项目

powershell 复制代码
docker build -t news_extract_app . 

运行

powershell 复制代码
docker run -d --name news_extract -p 4399:4399 news_extract_app	

--name news_extract 指定容器运行后的名字

查看运行状态



浏览器访问以下试试

从开发环境导出

我们可以使用docker save命令将镜像保存到指定的文件中,保存的文件是一个.tar格式的压缩文件。

powershell 复制代码
# 导出到tar
docker save -o news-extract-app.tar news_extract_app


查看docker容器

docker ps

删除容器

docker rm -f news-extract

查看镜像

docker images

删除镜像

docker rmi -f news-extract-app

将压缩包导入到生产环境

xftp

解压压缩包,并加载为镜像文件

powershell 复制代码
# 导入到生产环境的docker
docker load -i news-extract-app.tar

启动镜像

powershell 复制代码
docker-compose up -d

查看容器运行状况

相关推荐
小醉你真好9 分钟前
17、Centos9 安装 1Panel
linux·docker·运维开发
明灯L5 小时前
《Kubernetes 集群搭建全指南:从核心概念到环境部署!》
云原生·容器·kubernetes
insight^tkk5 小时前
【Docker】记录一次使用docker部署dify网段冲突的问题
运维·人工智能·docker·ai·容器
江湖人称小鱼哥5 小时前
WSL + Docker 网络访问详解
网络·docker·容器·wsl
韩宏伟5 小时前
使用 Loki + Promtail + Grafana 实现 Docker 容器日志采集与可视化
docker·容器·grafana
荣光波比6 小时前
K8S(十五)—— 企业级K8s集群管理实践:Rancher安装配置与核心功能实操
容器·kubernetes·rancher
JanelSirry7 小时前
微服务是不是一定要容器化(如 Docker)?我该怎么选
docker·微服务·架构
小屁不止是运维7 小时前
k8s问题详解1:k8s集群上传文件过大导致413 Request Entity Too Large(请求文件实体过大)
docker·容器·kubernetes
聆风吟º7 小时前
无需 VNC / 公网 IP!用 Docker-Webtop+cpolar,在手机浏览器远程操控 Linux
linux·运维·docker
ZLRRLZ8 小时前
【Docker】Docker镜像仓库
docker·容器