Docker Machine 入门实践@FreeBSD

news2024/11/17 23:39:21

在这篇文档里,我们安装了docker machine:FreeBSD安装Docker记录-CSDN博客

在这篇文档里,我们启动虚拟主机myvm并进入虚拟主机:boot2docker实践@FreeBSD-CSDN博客

现在开始更深入的进行 docker的实战演练。参考Docker Machine官方文档:Docker Machine | 菜鸟教程

 

 Docker Machine 入门实践

基本操作

在FreeBSD系统中,使用docker-machine命令查看一下docker:

docker-machine ls
NAME       ACTIVE   DRIVER       STATE     URL   SWARM   DOCKER    ERRORS
myvm       *        virtualbox   Running                 Unknown   Machine does not have a host-only adapter
testmyvm   -        virtualbox   Stopped                 Unknown   

就像前面文档中讲到的,可以使用如下命令创建一个:

docker-machine create --driver virtualbox test

查询docker ip

docker-machine ip myvm

停止和启动

docker-machine  stop myvm
docker-machine  start myvm

进入机器

docker-machine ssh myvm

进阶操作

查看虚拟主机的情况

docker-machine inspect  myvm

输出信息

{
    "ConfigVersion": 3,
    "Driver": {
        "IPAddress": "",
        "MachineName": "myvm",
        "SSHUser": "docker",
        "SSHPort": 0,
        "SSHKeyPath": "",
        "StorePath": "/home/skywalk/.docker/machine",
        "SwarmMaster": false,
        "SwarmHost": "tcp://0.0.0.0:3376",
        "SwarmDiscovery": "",
        "VBoxManager": {},
        "HostInterfaces": {},
        "CPU": 1,
        "Memory": 1024,
        "DiskSize": 20000,
        "NatNicType": "82540EM",
        "Boot2DockerURL": "",
        "Boot2DockerImportVM": "",
        "HostDNSResolver": false,
        "HostOnlyCIDR": "192.168.99.1/24",
        "HostOnlyNicType": "82540EM",
        "HostOnlyPromiscMode": "deny",
        "UIType": "headless",
        "HostOnlyNoDHCP": false,
        "NoShare": false,
        "DNSProxy": true,
        "NoVTXCheck": false,
        "ShareFolder": ""
    },
    "DriverName": "virtualbox",
    "HostOptions": {
        "Driver": "",
        "Memory": 0,
        "Disk": 0,
        "EngineOptions": {
            "ArbitraryFlags": [],
            "Dns": null,
            "GraphDir": "",
            "Env": [],
            "Ipv6": false,
            "InsecureRegistry": [],
            "Labels": [],
            "LogLevel": "",
            "StorageDriver": "",
            "SelinuxEnabled": false,
            "TlsVerify": true,
            "RegistryMirror": [],
            "InstallURL": "https://get.docker.com"
        },
        "SwarmOptions": {
            "IsSwarm": false,
            "Address": "",
            "Discovery": "",
            "Agent": false,
            "Master": false,
            "Host": "tcp://0.0.0.0:3376",
            "Image": "swarm:latest",
            "Strategy": "spread",
            "Heartbeat": 0,
            "Overcommit": 0,
            "ArbitraryFlags": [],
            "ArbitraryJoinFlags": [],
            "Env": null,
            "IsExperimental": false
        },
        "AuthOptions": {
            "CertDir": "/home/skywalk/.docker/machine/certs",
            "CaCertPath": "/home/skywalk/.docker/machine/certs/ca.pem",
            "CaPrivateKeyPath": "/home/skywalk/.docker/machine/certs/ca-key.pem",
            "CaCertRemotePath": "",
            "ServerCertPath": "/home/skywalk/.docker/machine/machines/myvm/server.pem",
            "ServerKeyPath": "/home/skywalk/.docker/machine/machines/myvm/server-key.pem",
            "ClientKeyPath": "/home/skywalk/.docker/machine/certs/key.pem",
            "ServerCertRemotePath": "",
            "ServerKeyRemotePath": "",
            "ClientCertPath": "/home/skywalk/.docker/machine/certs/cert.pem",
            "ServerCertSANs": [],
            "StorePath": "/home/skywalk/.docker/machine/machines/myvm"
        }
    },
    "Name": "myvm"
}

 现在还无法通过docker-machine命令获得虚拟机的ip地址等信息,只好到virtual box中查看ip,发现是192.168.5.102 ,可以通过ssh来登录它。

ssh docker@192.168.56.102
docker@192.168.56.102's password: 
   ( '>')
  /) TC (\   Core is distributed with ABSOLUTELY NO WARRANTY.
 (/-_--_-\)           www.tinycorelinux.net

docker@boot2docker:~$ 

这样至少也可以开始后面的docker操作了。

总结:

前段时间整docker的时候,弄出来的docker-machine ,现在终于算是会玩了。

整个流程就是:

FreeBSD下使用pkg install docker-machine安装docker-machine,

然后可以使用docker-machine命令创建tiny-linux核心的boot2docker虚拟主机,并可在virtual-box中启动这个虚拟主机。boot2docker虚拟主机里面有全套的docker实现套件,这样就可以开始docker之旅了。

这就是在FreeBSD系统下进行docker的终极解决方案。

boot2docker本来是为了mac os和windows下使用docker而生的,但是后来mac和win下都有了docker实现,反而现在成了FreeBSD下的解决方案,真是事事难料、造化弄人啊! 

调试

虚拟机报错Error getting IP address: Machine does not have a host-only adapter

在vitrual-machine里给myvm虚拟机设定一块host-only的网卡

命令docker-machine ip报错err     : exit status 255

docker-machine ip myvm
(docker@127.0.0.1) Password for docker@x250:
(docker@127.0.0.1) Password for docker@x250:
(docker@127.0.0.1) Password for docker@x250:
Error getting IP address: ssh command error:
command : ip addr show
err     : exit status 255
output  :
提示需要输入docker的密码,我要想想...

问题是这个密码是啥时候输入、设定的啊!先保留问题,后面发现可以暂时不输入口令跳过,但是不知道这样处理是否正确(感觉肯定是有问题的)

docker-machine  start myvm 报错

docker-machine start  myvm
Starting "myvm"...
(myvm) Check network to re-create if needed...
(myvm) Found a new host-only adapter: "vboxnet16"
Error setting up host only network on machine start: /usr/local/bin/VBoxManage hostonlyif ipconfig vboxnet16 --ip 192.168.99.1 --netmask 255.255.255.0 failed:
VBoxManage: error: Code E_ACCESSDENIED (0x80070005) - Access denied (extended info not available)
VBoxManage: error: Context: "EnableStaticIPConfig(Bstr(pszIp).raw(), Bstr(pszNetmask).raw())" at line 242 of file VBoxManageHostonly.cpp
 

这个没解决,暂时采用到Virtual-box里面手动开机处理。

boot2docker默认的用户名和密码

在 boot2docker 中,默认的用户名和密码是:

user: docker pass: tcuser

登录方法:

$ ssh docker@localhost -p 2022

不过这个登录方法,在FreeBSD下,还没法用,因为根本就没看到2022端口啊。

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

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

相关文章

Git--多人协作

目录 一、多人协作一二、多人协作二三、 远程分⽀删除后,本地git branch -a依然能看到的解决办法 一、多人协作一 ⽬前,我们所完成的⼯作如下: 1.基本完成Git的所有本地库的相关操作,git基本操作,分⽀理解,…

Java面试八股文-2024

面试指南 TMD,一个后端为什么要了解那么多的知识,真是服了。啥啥都得了解 MySQL MySQL索引可能在以下几种情况下失效: 不遵循最左匹配原则:在联合索引中,如果没有使用索引的最左前缀,即查询条件中没有包含…

RK3568平台开发系列讲解(Linux系统篇)芯片手册的使用:GPIO的寄存器说明

🚀返回专栏总目录 文章目录 一、查找复用寄存器二、查找方向寄存器三、查找数据寄存器沉淀、分享、成长,让自己和他人都能有所收获!😄 📢寄存器GPIO 进行配置, 一般情况下需要对 GPIO 的复用寄存器, 方向寄存器, 数据寄存器进行配置。 GPIO0_B0 配置为例: 一、查…

BTCOIN发布WEB3.0论坛:生态与金融的双重叙事热点驱动自由创新意识

在数字时代,信息的自由流动和透明度是推动经济发展和社会进步的关键。尤其在加密货币和区块链领域,这一点尤为重要。BTCOIN的最新创举——一个基于WEB3.0理念的信息论坛,不仅标志着信息传递自由化的新篇章,也为数字货币市场的信息…

上位机图像处理和嵌入式模块部署(树莓派4b中的软件调试)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 说到软件调试,有一点大家相信都有体会。那就是编写软件的时候,功能本身还是不算太复杂的。只需要前面流程、算法都设计好了…

STM32学习和实践笔记(20):定时器

1.定时器介绍 STM32F1的定时器一共有8个,由2个基本定时器(TIM6、TIM7)、4个通用定时器(TIM2-TIM5)和2个高级定时器(TIM1、TIM8)组成。 基本定时器的功能最为简单,类似于51单片机内定…

BGP选路原则

路由器对BGP路由的处理过程 l 策略机:操纵路径属性,对属性置值。通过影响路由表的生成,从而影响用户数据的转发 输入策略机影响自己及下游路由器 输出策略机不影响自己,只影响下游路由器 l 路由决策:根据BGP路…

AI赋能分层模式,解构未来,智领风潮

​🌈 个人主页:danci_ 🔥 系列专栏:《设计模式》 💪🏻 制定明确可量化的目标,坚持默默的做事。 🚀 转载自热榜文章🔥:探索设计模式的魅力:AI赋能分…

基于单片机公交语音报站系统设计 含源码,Proteus仿真原理图

资料下载地址:基于单片机公交语音报站系统设计 含源码,Proteus仿真原理图 1、前言 系统的总体设计需要充分运用STC单片机作为主控控制芯片,完成主控控制电路的基本设计,辅助控制电路是语音控制电路、12864显示电路、按键控制电路、…

通过阿里云OOS实现定时备份redis实例转储到OSS

功能背景 随着企业业务数据的快速增长,Redis 作为高性能的内存数据存储方案,在多种应用场景下承担着重要的角色。为确保数据安全,定时备份成为了不可或缺的一环。Redis 实例定时备份是关键数据库管理任务的一个重要组成部分,它主…

雷雨天气频繁,输电线路如何防雷?避雷器在线监测装置智能护电

春日将近,夏日绵长。再过几天便到立夏了,根据《二十四节气歌》的记载,立夏的到来意味着夏季的序幕正式拉开。立夏之时,万物开始增大、成长,是生命力旺盛的体现。此时气温回升快,炎热的气息逐渐袭来&#xf…

优化打印性能:为您的 Magicard 打印机选择合适的清洁用品

Magicard打印机是许多企业和组织中信赖的首选,其可靠性和打印质量让其成为许多人的首选。然而,为了保持这种可靠性和质量,定期清洁和维护是至关重要的。在这篇文章中,我们将介绍不同型号的Magicard打印机以及它们所需的正确清洁卡…

CTF-Show nodejs

web334 下载附件,有两个文件 在Character.toUpperCase()函数中,字符ı会转变为I,字符ſ会变为S。 在Character.toLowerCase()函数中,字符İ会转变为i,字符K会转变为k。 所以用ctfſhow 123456登录就可以出flag了 w…

磁共振质子密度脂肪分数(MRI-PDFF)适用于无创评估肝脂肪含量 目前其已完成市场化

磁共振质子密度脂肪分数(MRI-PDFF)适用于无创评估肝脂肪含量 目前其已完成市场化 磁共振质子密度脂肪分数(MRI-PDFF)又称为MRI肝脏脂肪定量,是一种运用磁共振技术对整个肝脏中的脂肪进行客观、定量、无创评估的成像方法…

react,Chart

一、基础图:https://ant-design-charts.antgroup.com/ Ant Design Charts 1. 首先要下载ant-design/charts,然后在页面中添加如下柱状图代码: import React from react; import { Column } from ant-design/chartsconst DemoColumn: React.FC () …

如何正确进行Lazada、速卖通、Shopee店铺补单?这些建议助你提升排名!

如今,在Lazada、速卖通和Shopee等电商平台上开店的卖家越来越多,保持店铺稳定运营成为每个卖家都需思考的问题。现在让我们一起来探讨一下,哪些运营上需要注意的要点。 1、精心挑选产品 跨境电商与国内电商的核心都在于产品。只有选择到优质…

spark3.0.0单机模式安装

注:此安装教程基于hadoop3集群版本 下载安装包 下载spark3.0.0版本,hadoop和spark版本要对应,否则会不兼容 用xftp上传Linux虚拟机,上传目录/bigdata(可修改) 解压 tar -zxvf /bigdata/spark-3.0.0-bin-h…

Rust Web开发实战:构建高效稳定的服务端应用

如果你厌倦了缓慢、占用大量资源且不稳定的模板化Web开发工具,Rust就是你的解决方案。Rust服务提供了稳定的安全保证、非凡的开发经验,以及能够自动防止常见错误的编译器。 《Rust Web开发》教你使用Rust以及重要的Rust库(如异步运行时的Tokio、用于Web…

AList 网盘挂载,在线浏览各种网盘资源,部署并挂载到本地——教程(Linux+Windows)

目录 下载:Tags alist-org/alist GitHub Linux中安装和挂载网盘 使用docker安装alist ​编辑 安装davfs2 将网盘挂载到本地 Windows中安装和挂载网盘 下载:Tags alist-org/alist GitHub 选择最新版下载,也可以选择其它版本 官方文…

STM32G030F6P6TR 芯片TSSOP20 MCU单片机微控制器芯片

STM32G030F6P6TR 在物联网(IoT)设备中的典型应用案例包括但不限于以下几个方面: 1. 环境监测系统: 使用传感器来监测温度、湿度、气压等环境因素,并通过无线通信模块将数据发送到中央服务器或云端平台进行分析和监控。…