【Django项目天天生鲜】安装Docker Desktop和FastDFS(和python交互还是失败了,有人遇到跟我一样的问题吗?)

环境:win10专业版,家庭版另找教程

1、安装docker desktop

进入网址戳这里直接安装就行,没什么要注意的,当你打开的时候遇到wsl2没安装,按照提示安装了就行。

【Django项目天天生鲜】安装Docker Desktop和FastDFS(和python交互还是失败了,有人遇到跟我一样的问题吗?)

安装完了就是镜像配置了,拉取镜像的时候能快点,多加几个。点击设置选择docker engine

【Django项目天天生鲜】安装Docker Desktop和FastDFS(和python交互还是失败了,有人遇到跟我一样的问题吗?)
【Django项目天天生鲜】安装Docker Desktop和FastDFS(和python交互还是失败了,有人遇到跟我一样的问题吗?)
在右边的框框里面加上下面这些
"registry-mirrors": [
    "https://xxxxx.mirror.aliyuncs.com/",
    "https://docker.mirrors.ustc.edu.cn/",
    "http://hub-mirror.c.163.com/"
  ]

对了,在这期间右下角必须一直是绿绿的,这样docker才算是正常启动。

【Django项目天天生鲜】安装Docker Desktop和FastDFS(和python交互还是失败了,有人遇到跟我一样的问题吗?)
2、拉取镜像,并让镜像跑起来

参考:天天生鲜-django2.2版本中的readme文件,注意整个过程docker desktop需要打开。

win+e输入cmd,进入命令行工具,输入以下命令,需要耐心等待,多试几次,全部pull complete才行。

docker pull pad0y/fdfs:v3

拉取完毕,会在image中显示

【Django项目天天生鲜】安装Docker Desktop和FastDFS(和python交互还是失败了,有人遇到跟我一样的问题吗?)
输入以下命令,让镜像跑起来
docker run -d --name fdfs\
    -p 8888:8888 \
    -p 22122:22122 \
    -p 23000:23000 \
    -e TZ=Asia/Shanghai \
    -e NET_VAR=eth0 \
    -e MASTER_IP=xxx\ # 这里的ip地址是本机的ip地址
    -v /mnt/fdfs:/var/local/fdfs \
    pad0y/fdfs:v3

成功运行会看到fdfs容器前面变绿了

【Django项目天天生鲜】安装Docker Desktop和FastDFS(和python交互还是失败了,有人遇到跟我一样的问题吗?)
查看当前服务是否正常运行,进入命令行
【Django项目天天生鲜】安装Docker Desktop和FastDFS(和python交互还是失败了,有人遇到跟我一样的问题吗?)
输入 ps aux | grep fdfs,当前storage和tracker正常启动
【Django项目天天生鲜】安装Docker Desktop和FastDFS(和python交互还是失败了,有人遇到跟我一样的问题吗?)
3、测试fdfs容器是否安装成功

首先查看容器id,后面上传会用到,在命令行输入以下命令

docker ps -a

b4efa4da4c85 即为fdfs的容器id

【Django项目天天生鲜】安装Docker Desktop和FastDFS(和python交互还是失败了,有人遇到跟我一样的问题吗?)
测试上传,首先将测试图片传入容器,前面是本机的图片路径(默认是C盘,你也可以写”D:/xxxx”用自己图片所在路径),后面是容器id:目标地址
我的地址就是c:/
【Django项目天天生鲜】安装Docker Desktop和FastDFS(和python交互还是失败了,有人遇到跟我一样的问题吗?)
PS C:\Users\DUE> docker cp /xiao.jpg b4efa4da4c85:/etc/fdfs/

回到fdfs的命令行,执行如下命令上传文件,返回group1xxxx即为上传成功!

cd /etc/fdfs  # 进入/etc/fdfs目录
/etc/fdfs # fdfs_upload_file /etc/fdfs/client.conf /etc/fdfs/xiao.jpg  # 上传文件
group1/M00/00/00/rBEAAWJJbjqAZXtGAACCu0eyKfE255.jpg

为了保险,在浏览器中输入图片地址测试一下。可以访问,即为上传成功

【Django项目天天生鲜】安装Docker Desktop和FastDFS(和python交互还是失败了,有人遇到跟我一样的问题吗?)
4、fdfs与python交互

python版本:3.7
先将 fdfs_client-py-master.zip下载下来,这个在课件里面找(b站评论区一大堆),然后按照链接中说的该修改修改,该注释注释,然后找到setup.py所在目录,地址栏输入cmd进入命令行,在命令行中输入 python setup.py install

完了之后得到的是个egg文件,不用管他,直接用就行
参考:windows下在使用django时用到fdfs_client模块的安装问题

打开pythonIDE,导包,选一个路径放上自己的client.conf,然后上传

>>> from fdfs_client.client import Fdfs_client
>>> client = Fdfs_client('D:/Program Files/FastDFS/client.conf')
>>> ret = client.upload_by_filename('D:/pictures/xiao.jpg')

然后就成了这样了,然后就没有然后了,这就是我这两天研究下来的成果,有人能救救我吗?

看到有篇文章好像跟我的问题差不多,但是操作系统不一样,也不能用这种方法来解决
参考:docker安装fastdfs碰到storage的IP地址映射宿主地址问题

【Django项目天天生鲜】安装Docker Desktop和FastDFS(和python交互还是失败了,有人遇到跟我一样的问题吗?)
最后,找bug的这些天,我也找到了不少有用的命令,也许你也能用得到。

1、修改镜像保存路径(确保wsl应用已退出)

C:\Users\DUE>wsl --list -v
  NAME                   STATE           VERSION
* docker-desktop         Stopped         2
  docker-desktop-data    Stopped         2

导出镜像文件,那个冒号不要忘记!

C:\Users\DUE>wsl --export docker-desktop-data "D:\Program Files\DockerDesktop\docker-desktop-data.tar"

C:\Users\DUE>wsl --export docker-desktop "D:\Program Files\DockerDesktop\docker-desktop.tar"

注销子系统

C:\Users\DUE>wsl --unregister docker-desktop-data
正在注销...

C:\Users\DUE>wsl --unregister docker-desktop
正在注销...

重新导入,前面是自己要安装的位置,后面是需要用到的压缩包的位置

C:\Users\DUE>wsl --import docker-desktop "D:\Program Files\DockerDesktop\docker-desktop" "D:\Program Files\DockerDesktop\docker-desktop.tar" --version 2

C:\Users\DUE>wsl --import docker-desktop-data "D:\Program Files\DockerDesktop\docker-desktop-data" "D:\Program Files\DockerDesktop\docker-desktop-data.tar" --version 2

2、查看并杀死进程

C:\Users\DUE>netstat -aon|findstr "22122"  # 这个是端口号
  TCP    192.168.3.25:54290     192.168.3.25:22122     SYN_SENT        14876
  TCP    192.168.3.25:54291     192.168.3.25:22122     SYN_SENT        14876

C:\Users\DUE>tasklist |findstr "14876"  # 这个是进程号

3、linux系统编辑文件的命令

编辑:vi + 文件名

编辑完保存退出的命令方式

    1. Esc+:+wq+回车(w是write,q是quit)

    2. Esc+:+x+回车(x=wq)

    3. Esc+shift+zz

    4. Esc+ZZ(在大写开启下)

如果是进入了编辑,但是未进行任何改动的保存退出命令如下:

Esc+:+q+回车

不保存退出的命令:z
转自:linux系统编辑完保存退出的四种方式

Original: https://blog.csdn.net/xiaoluobotm/article/details/123911969
Author: 小萝卜_
Title: 【Django项目天天生鲜】安装Docker Desktop和FastDFS(和python交互还是失败了,有人遇到跟我一样的问题吗?)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/733075/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球