win7安装DockerToolbox、下载并提取docker镜像、部署portainer

DockerToolbox-Docker(win)镜像提取

  • 为什么使用DockerToolBox?
    【Docker for Windows 对操作系统要求】
    	1.操作系统要求必须64位的window10。
    	2.必须启动Hyper-V 虚拟化来支持。
    	
    【Docker ToolBox 对操作系统要求】
    	1.适合 win7 等老版本系统使用。
    

安装 DockerToolbox

下载软件


地址
官方https://github.com/docker/toolbox/releases
daocloudhttp://get.daocloud.io/#install-docker-for-mac-windows
aliyunhttp://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/?spm=5176.8351553.0.0.4bc61991tQpsnV
githttps://git-scm.com/downloads

daocloud特性

特性:提供并行下载加速
搜索使用 :docker search xx
安装使用: dao pull xx

安装git

直接双机 Git-2.15.1.2-64-bit.exe 安装,所有选项无需修改,全部 “Next” 即可,路径使用默认值。

安装dockertoolbox

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

初始化

安装后桌面会出现三个图标:
在这里插入图片描述
双机打开 “ Docker QuickStart Terminal ”:
如果已安装git,但是未读取到,会提示查找 “bash.exe”文件,直接选择 “C:\Program Files\Git\bin\bash.exe”即可。

此时会检测 “boot2docker.iso”文件是否存在,是否版本已过去,是否能够初始化成功,如果版本过期会联网重新下载,如果初始化失败并确认版本BUG,会提示更新VMBox,此时双机桌面VMBox图标,会提示更新软件,直接点击提示链接下载更新即可,然后重新打开 “ Docker QuickStart Terminal ”。

如果镜像下载失败,则使用本地默认镜像:
复制 C:\Program Files\Docker Toolbox\boot2docker.iso 到 C:\Users\Administrator.docker\machine\cache 即可。

在这里插入图片描述
在这里插入图片描述


手动下载:boot2docker.iso

地址(window install)
Oracle VirtualBoxhttps://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html

在这里插入图片描述

下载镜像

启动docker

双机桌面 “ Docker QuickStart Terminal ” 启动docker(vmbox):上一步骤默认启动后docker已经可用

终端链接

使用ssh工具 MobaXterm 连接
由于windows启动的docker窗口不友好,不利于操作。所以可以使用ssh工具(本位使用xshell)进行连接,连接后与linux主机功能一致,默认用户为docker。


IP192.168.99.100(默认,在启动窗口可以找到)
IP192.168.99.100(默认,在启动窗口可以找到)
PORT22
用户名docker
密码tcuser
在这里插入图片描述

拉取镜像

查询本地镜像
# docker images

查询Portainer镜像 (默认选取第一个STARS最多的项目)
# docker search portainer

下载镜像
# docker pull docker.io/portainer/portainer

查询本地镜像
# docker images
REPOSITORY            TAG       IMAGE ID          CREATED         SIZE
portainer/portainer   latest    b77e51032484      1 hours ago     200MB

镜像打包
# docker save -o portainer.tar portainer/portainer:latest

在这里插入图片描述

提取镜像

方式1:自带共享文件夹功能

  • 主机新建共享目录:
    在这里插入图片描述

  • 设置文件夹权限:
    在这里插入图片描述

  • 虚拟机设置共享目录:
    在这里插入图片描述

  • 共享路径:主机共享数据的目录

  • 共享名称:虚拟机中用来挂载的设备名称
    在这里插入图片描述

  • 挂载目录:

$ sudo su - root
# mount -t vboxsf -o uid=1000,gid=1000 vmbox /home/vmbox
# cp /home/docker/portainer.tar /home/vmbox
  • 主机查询文件:
    在这里插入图片描述

方式2:FTP

  • 终端MobaxTerm连接虚拟机:docker / tcuser
    在这里插入图片描述
  • 选中点击下载:
    在这里插入图片描述

导入镜像

上传镜像到指定服务器后导入:

# docker load -i /home/portainer.tar
dd4969f97241: Loading layer [==================================================>]    278kB/278kB
f3cb3c4e5185: Loading layer [==================================================>]  75.12MB/75.12MB
Loaded image: portainer/portainer:latest

# docker images
REPOSITORY                                               TAG                       IMAGE ID            CREATED             SIZE
portainer/portainer                                      latest                    da2759008147        3 weeks ago         75.4MB

部署portainer

本地docker

# docker run -d -p 9000:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --name portainer portainer/portainer
  • 设置初始密码(12345678)
    在这里插入图片描述
  • 增加本地docker
    在这里插入图片描述
  • 概况预览
    在这里插入图片描述在这里插入图片描述

远程连接

  • 开启TLS验证 (可选)

    【生成私钥KEY】
    # mkdir /home/dockercert;cd /home/dockercert
    # 此时目录下会生成server.key文件
    
    【生成证书请求文件CSR】
    # openssl req -new -key server.key -out server.csr
    You are about to be asked to enter information that will be incorporated
    into your certificate request.
    What you are about to enter is what is called a Distinguished Name or a DN.
    There are quite a few fields but you can leave some blank
    For some fields there will be a default value,
    If you enter '.', the field will be left blank.
    -----
    Country Name (2 letter code) [AU]:
    State or Province Name (full name) [Some-State]:
    Locality Name (eg, city) []:
    Organization Name (eg, company) [Internet Widgits Pty Ltd]:
    Organizational Unit Name (eg, section) []:
    Common Name (e.g. server FQDN or YOUR name) []:docker
    Email Address []:
    
    Please enter the following 'extra' attributes
    to be sent with your certificate request
    A challenge password []:
    An optional company name []:
    
    【生成CA的证书】
    # openssl req -new -x509 -key server.key -out ca.crt -days 3650
    You are about to be asked to enter information that will be incorporated
    into your certificate request.
    What you are about to enter is what is called a Distinguished Name or a DN.
    There are quite a few fields but you can leave some blank
    For some fields there will be a default value,
    If you enter '.', the field will be left blank.
    -----
    Country Name (2 letter code) [AU]:
    State or Province Name (full name) [Some-State]:
    Locality Name (eg, city) []:
    Organization Name (eg, company) [Internet Widgits Pty Ltd]:
    Organizational Unit Name (eg, section) []:
    Common Name (e.g. server FQDN or YOUR name) []:docker
    Email Address []:
    
    【颁发证书】
    # openssl x509 -req -days 3650 -in server.csr -CA ca.crt -CAkey server.key -CAcreateserial -out server.crt
    # server.crt 就是我们需要的证书
    
    【增加配置文件】(这个路径文件如果不存在需要自己创建)
    # mkdir -p /etc/systemd/system/docker.service.d
    # vim /etc/systemd/system/docker.service.d/override.conf 
    [Service]
    ExecStart=
    ExecStart=/usr/bin/dockerd --tls --tlscacert=/home/dockercert/ca.crt --tlscert=/home/dockercert/server.crt --tlskey=/home/dockercert/server.key -H unix:///var/run/docker.sock
    ExecReload=/bin/kill -s HUP $MAINPID
    TimeoutSec=0
    RestartSec=2
    Restart=always
    
    【生效配置】
    # systemctl daemon-reload
    
    【重启docker】
    # docker stop $(docker ps -a -q)  # stop停止所有容器
    # systemctl restart docker.service
    
  • Ubuntu开启远程+TLS(远程需要修改salve)(不开启则去掉TLS参数即可)

    【修改配置文件】
    # vim /etc/systemd/system/docker.service.d/override.conf 
    [Service]
    ExecStart=
    ExecStart=/usr/bin/dockerd --tls --tlscacert=/home/dockercert/ca.crt --tlscert=/home/dockercert/server.crt --tlskey=/home/dockercert/server.key -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
    ExecReload=/bin/kill -s HUP $MAINPID
    TimeoutSec=0
    RestartSec=2
    Restart=always
    
    【生效配置】
    # systemctl daemon-reload
    
    【重启docker】
    # docker stop $(docker ps -a -q)  # stop停止所有容器
    # systemctl restart docker.service
    
    【查看监听】
    # netstat -lntp | grep dockerd
    tcp6       0      0 :::2375                 :::*                    LISTEN      65013/dockerd
    
    【防火墙】【可直接关闭】
    查询状态(规则)
    # ufw status
    开放端口
    # ufw allow 8080
    禁用端口
    # ufw deny 8080
    启停/禁用防火墙 (启动并自启,停止并禁用自启)
    # ufw disable
    # ufw enable
    
    【测试连接】
    # docker -H 10.47.85.214 info  (无证书)
    # docker --tls --tlscacert=/home/dockercert/ca.crt --tlscert=/home/dockercert/server.crt --tlskey=/home/dockercert/server.key -H 10.47.85.214 info (有证书)
    
  • Centos开启远程+TLS(远程需要修改salve)(不开启则去掉TLS参数即可)

    【开启2375端口】
    # echo "OPTIONS='-Htcp://0.0.0.0:2375 -H unix:///var/run/docker.sock'"
    # chmod 777 /etc/default/docker
    # /etc/default/docker
    
    【增加键值对,每台服务器只添加自己IP的信息,比如当前服务器IP是:10.47.85.214,那么添加信息如下】
    # vim /etc/docker/daemon.json
    {
    "hosts": ["tcp://10.47.85.214:2375", "unix:///var/run/docker.sock"]
    }
    
    【重启docker】
    # docker stop $(docker ps -a -q)  # stop停止所有容器
    # service docker restart
    
    【防火墙】【可直接关闭】
    【Centos7】
    开放端口
    # firewall-cmd --permanent --zone=public --add-port=2375/tcp
    # firewall-cmd --reload
    查看已开放/过滤端口
    # firewall-cmd --permanent --zone=public --list-ports
    启停防火墙
    # systemctl status firewalld  --查看防火墙状态;
    # systemctl restart firewalld --重启防火墙
    # systemctl start firewalld   --开启防火墙
    # systemctl stop firewalld    -- 关闭防火墙 
    禁用防火墙
    # systemctl disable firewalld.service  --禁用防火墙随系统自启
    # systemctl enable firewalld.service   --开启防火墙随系统自启
    【centos6】
    # iptables -I INPUT -p tcp --dport 2375-j ACCEPT
    编辑/etc/sysconfig/iptables : 增加配置
    	-A INPUT -p tcp -m state --state NEW -m tcp --dport 2375-j ACCEPT
    启停防火墙
    # service iptables restart
    # service iptables start
    # service iptables stop
    禁用防火墙
    # chkconfig iptables on  --开启
    # chkconfig iptables off  --关闭
    查询规则
    # iptables -L
    
    【查看监听】
    	# netstat -lntp | grep dockerd
    	tcp6       0      0 :::2375                 :::*                    LISTEN      65013/dockerd
    	
    【测试连接】
    # docker -H 10.47.85.214 info  (无证书)
    # docker --tls --tlscacert=/home/dockercert/ca.crt --tlscert=/home/dockercert/server.crt --tlskey=/home/dockercert/server.key -H 10.47.85.214 info (有证书)
    
  • 增加Endpoint
    下载上文生成的证书,添加节点时上传即可:宿主机未开启安全验证则关闭TLS即可
    在这里插入图片描述在这里插入图片描述

容器克隆

简化配置操作,克隆模板容器:

  • 模板
    在这里插入图片描述

  • 复制容器
    点击模板容器Name “dap-agent-1” 进入概览页面,并编辑复制容器:
    在这里插入图片描述

  • 基础配置
    简化配置操作

  • 高级配置

在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

  • 部署并查询新容器
    在这里插入图片描述
    在这里插入图片描述
### 如何下载正确安装Win7系统镜像文件 #### 下载Windows 7镜像 为了成功下载Windows 7系统的镜像文件,可以选择官方或者可信的第三方资源。通常情况下,ISO格式是最常见的选择[^3]。这种格式可以被用来制作启动盘(如U盘或光盘),也可以通过某些PE环境下的一键装机工具直接进行安装。 对于ISO文件的具体用途如下: - 刻录成DVD光盘通过光驱启动安装; - 使用UltraISO、Rufus等工具将其写入到可引导的U盘上; - 解压至硬盘特定位置后利用NT6 HDD Installer这样的软件完成安装; - 或者借助部分PE环境中自带的功能选项指定该ISO路径进而实现部署操作。 值得注意的是,在准备阶段除了获取合适的镜像外还需要注意目标磁盘空间是否充足因为整个过程可能涉及较大容量的数据传输与写入动作而这些都会消耗一定时间尤其是当源数据体积庞大时更是如此[^4]。 #### 安装前准备工作 在正式进入安装流程之前有几个重要事项需要注意: 1. **硬件兼容性检查** 部分较新型号设备可能存在不完全支持旧版本操作系统的情况比如某些虚拟化平台就存在无法正常加载Windows XP/Vista/7等问题因此如果是在此类场景下尝试则需查阅对应厂商文档寻找解决方案例如调整设置参数允许更广泛的操作系统类型识别[^1]。 2. **创建启动介质** 基于前述提到的方法之一构建能够自举的目标存储装置即要么是一个含有必要引导记录以及相关组件配置完毕后的物理媒介(U盘/DVD),或者是已经经过适当初始化处理过的内部储存单元以便后续步骤得以顺利开展下去[^5]。 3. **备份现有资料** 尽管全新重装不会直接影响其他独立分区内的个人档案但如果不确定具体覆盖范围最好还是提前做好相应防护措施以免造成不必要的损失。 #### 开始安装过程 一旦上述前提条件均已满足便可按照常规方式执行实际装配作业: 假设采用基于USB闪存棒作为主要载体的情形下面给出简要指导方针: - 插入已制备好的Live USB stick重启机器; - 进入BIOS界面更改优先级顺序使得外部设备注册靠前者获得控制权; - 存储结构划分规划(视具体情况定); - 启动图形化向导跟随屏幕指示直至结束全部环节[^2]. 另外针对特殊需求场合还可以考虑运用Ghost之类的克隆技术快速恢复预先保存下来的完整状态副本从而极大缩短整体耗时时长同时保持高度一致性效果. ```bash # 示例命令:从D盘启动setup程序 d:\win7\sources\setup.exe ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值