zoukankan      html  css  js  c++  java
  • windows10 docker 使用以及虚拟机下fastDFS 的使用教程

    我们 先来了解下 什么是docker?

     

    Docker的思想来自于集装箱,集装箱解决了什么问题?在一艘大船上,可以把货物规整的摆放起来。并且各种各样的货物被集装箱标准化了,集装箱和集装箱之间不会互相影响。那么我就不需要专门运送水果的船和专门运送化学品的船了。只要这些货物在集装箱里封装的好好的,那我就可以用一艘大船把他们都运走。

    docker就是类似的理念。现在都流行云计算了,云计算就好比大货轮。docker就是集装箱。

    1.不同的应用程序可能会有不同的应用环境,比如.net开发的网站和php开发的网站依赖的软件就不一样,如果把他们依赖的软件都安装在一个服务器上就要调试很久,而且很麻烦,还会造成一些冲突。比如IIS和Apache访问端口冲突。这个时候你就要隔离.net开发的网站和php开发的网站。常规来讲,我们可以在服务器上创建不同的虚拟机在不同的虚拟机上放置不同的应用,但是虚拟机开销比较高。docker可以实现虚拟机隔离应用环境的功能,并且开销比虚拟机小,小就意味着省钱了。

    2.你开发软件的时候用的是Ubuntu,但是运维管理的都是centos,运维在把你的软件从开发环境转移到生产环境的时候就会遇到一些Ubuntu转centos的问题,比如:有个特殊版本的数据库,只有Ubuntu支持,centos不支持,在转移的过程当中运维就得想办法解决这样的问题。这时候要是有docker你就可以把开发环境直接封装转移给运维,运维直接部署你给他的docker就可以了。而且部署速度快。

    3.在服务器负载方面,如果你单独开一个虚拟机,那么虚拟机会占用空闲内存的,docker部署的话,这些内存就会利用起来。

    总之docker就是集装箱原理。

    第一步先下载docker:

    windows下docker的 地址,请点击左边的链接即可 ,提取码4ydb

    准备:

    第一,把你的电脑的bios的虚拟开关打开,各个品牌的打开方法自己百度

    第二,启 windows 10 的 Hyper-V :控制面板 - 程序 - 启用或关闭 windows 功能

     

    注:只有win10的专业版才有此功能

    第二步:

    我们进行docker的配置,

    这里可以设置docker的内存以及占用核数

     

     我们可以将docker下载源 更改为 网易的   http://hub-mirror.c.163.com

     

     

    ok 配置完毕 我们的小鲸鱼开始起航了 

     

    开始:

    去 Docker Hub 上拉取一个叫 hello-world 的集装箱(说白了就是从网上拉下来

    docker pull hello-world

     

    然后让这个集装箱跑起来:

    docker run hello-world

    查看本机所安装的集装箱

    docker images

     

    例子:把hello-world  镜像保存在本地

    docker save hello-world -o hellow-world.tar   -o后面跟生成的路径

    删除 镜像:

    docker rmi hello-world

    查看正在运行的容器

    docker ps -a

     

    删除所有的容器

    docker rm docker ps -a -q

     

    停止、启动、杀死一个容器

    docker stop Name/ID 
    docker start Name/ID 
    docker kill Name/ID

     


    win10下  docker上安装  fastdfs, 我的百度网盘上有 点击下载  提取码:id9t

    docker load -i ⽂件路径/fastdfs_docker.tar

    1, 假如 我们的这个tar文件在桌面,   docker load -i /C:/Users/Administrator/Desktop/fastdfs_docker.tar

    接下来把 我们的小鲸鱼共享磁盘设置,点击确定后会弹出 输入计算机密码的的窗口, 

    2. 运⾏tracker

    执⾏如下命令开启tracker 服务

    docker run -dti --network=host --name tracker -v /var/fdfs/tracker:/var/fdfs delron/fastdfs tracker

    我们将 fastDFS tracker 运⾏⽬录映射到本机的 /var/fdfs/tracker⽬录中,注 在我们设置的共享磁盘下 建立这三层目录,

    3. 运⾏storage


    执⾏如下命令开启storage服务(/var/fdfs/storage 手动建立

    docker run -dti --network=host --name storage -e TRACKER_SERVER=10.211.55.5:22122 -v /var/fdfs/storage:/var/fdfs delron/fastdfs storage

    注:TRACKER_SERVER=本机的ip地址,不是你的127.0.0.1,端口号设置22122

     

    最后 我们来测试下 到底安装好了没有

    docker images   查集装箱
    docker ps -a    查容器

     下图 代表你的应用正在运行中,

     

    由于 fastdfs  在我们windows下 测试屡次出现问题,所有我们将项目转移到虚拟机上,

    ubuntu18.04虚拟机安装docker

     

    第一步: 

    sudo apt-get update

    然后直接   

    sudo apt install docker.io

    安装完成之后 可以 

    docker version   查看版本 

    或者 docker -v

    然后获取镜像

    可以利⽤已有的FastDFS Docker镜像来运⾏FastDFS。
    获取镜像可以通过下载

    sudo docker image pull delron/fastdfs

    也可是直接使⽤提供给⼤家的镜像备份⽂件

    sudo docker load -i ⽂件路径/fastdfs_docker.tar

    成功之后可以 

    sudo docker image ls 查看镜像

    列出本机所有容器,包括已经终止运行的

    sudo docker container ls --all
     

    加载好镜像后,就可以开启运⾏FastDFS的tracker和storage了。

     

    删除镜像

    sudo docker image rm hello-world

    创建容器

    sudo docker run [option] 镜像名 [向启动容器中传入的命令]
    常用可选参数说明:

    -i 表示以“交互模式”运行容器
    -t 表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即 分配一个伪终端。
    –name 为创建的容器命名
    -v 表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录,即 宿主机目录:容器中目录),可以使 用多个-v 做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后 共享到容器上。
    -d 在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不 会自动登录容器,如果只加-i -t 两个参数,创建后就会自动进去容器)。
    -p 表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p 做多个端口映射
    -e 为容器设置环境变量
    –network=host 表示将主机的网络环境映射到容器中,容器的网络与主机相同
    交互式容器


    例如,创建一个交互式容器,并命名为myubuntu

    sudo docker run -it --name=myubuntu ubuntu /bin/bash

    2. 运⾏tracker
    执⾏如下命令开启tracker 服务

    sudo docker run -dti --network=host --name tracker -v /var/fdfs/tracker:/var/fdfs delron/fastdfs tracker

    我们将fastDFS tracker运⾏⽬录映射到本机的 /var/fdfs/tracker⽬录中。
    执⾏如下命令查看tracker是否运⾏起来

    sudo docker container ls

    如果想停⽌tracker服务,可以执⾏如下命令

    sudo docker container stop tracker


    停⽌后,重新运⾏tracker,可以执⾏如下命令

    sudo docker container start tracker


    3. 运⾏storage
    执⾏如下命令开启storage服务

    sudo docker run -dti --network=host --name storage -e TRACKER_SERVER=10.211.55.5:22122 -v /var/fdfs/storage:/var/fdfs delron/fastdfs storage

    TRACKER_SERVER=本机的ip地址:22122 本机ip地址不要使⽤127.0.0.1
    我们将fastDFS storage运⾏⽬录映射到本机的/var/fdfs/storage⽬录中
    执⾏如下命令查看storage是否运⾏起来

    sudo docker container ls

    如果想停⽌storage服务,可以执⾏如下命令

    sudo docker container stop storage


    停⽌后,重新运⾏storage,可以执⾏如下命令

    sudo docker container start


    注意:如果⽆法重新运⾏,可以删除/var/fdfs/storage/data⽬录下的fdfs_storaged.pid ⽂件,然后
    重新运⾏storage。

    停止与启动容器

    停止一个已经在运行的容器

    sudo docker container stop 容器名或容器id


    启动一个已经停止的容器

    sudo docker container start 容器名或容器id

    kill掉一个已经在运行的容器

    sudo docker container kill 容器名或容器id

    删除容器

    sudo docker container rm 容器名或容器id

    将容器保存为镜像

    sudo docker commit 容器名 镜像名

    镜像备份与迁移

    我们可以通过save命令将镜像打包成文件,拷贝给别人使用

    sudo docker save -o 保存的文件名 镜像名
    sudo docker save -o ./ubuntu.tar ubuntu


    在拿到镜像文件后,可以通过load方法,将镜像加载到本地
    sudo docker load -i ./ubuntu.tar


    我们的python环境中,需要安装

    安装
    安装提供给⼤家的fdfs_client-py-master.zip到虚拟环境中

    百度下载 提取码:0qyo
    pip install fdfs_client-py-master.zip   本地下载
    pip install mutagen 
    pip isntall requests

     解压后 cd到该目录下

    看截图

    执行 (注意虚拟环境的切换)

    python setup.py install

    把这个安装包 安装到你的环境中即可

    下载 文档  激活码:ayzh

    我们可以打开 shell环境:

    python manage.py shell 

    from fdfs_client.client import Fdfs_client
    
    client = Fdfs_client('meiduo_mall/utils/fastdfs/client.conf')
    client.upload_by_filename(文件名)

     接下来看看上传成功后的信息输出

     

    最后 在浏览器 输入本地IP + 8888 +上面的红框字符串  测试是否可以读取上传的信息

  • 相关阅读:
    UML中类图的符号解释
    Vim简明教程【CoolShell】
    C++ 指针—02 指针与引用的对照
    一个通用onReady函数的实现
    内存泄漏以及常见的解决方法
    个人博客之路
    WPF 设置WebBrowser控件不弹脚本错误提示框
    Solr使用入门指南
    用C语言写解释器(一)——我们的目标
    数据库索引的作用和长处缺点
  • 原文地址:https://www.cnblogs.com/lvye001/p/10070374.html
Copyright © 2011-2022 走看看