docker-machine的使用

一、docker 的下载

  toolbox 官方下载地址: https://www.docker.com/toolbox 

二、docker 的安装

  windows 下 docker-machine 创建 docker 环境不成功的一般解决方法:

  一般情况下 win7 系统下不支持最新的 virtualbox ,所以在 win7 下 安装 virtualbox 4.3.12 ,也可以选择升级到win10 , 可以使用最新的 virtualbox 版本

三、创建 docker 机器 dev

  docker-machine.exe create --driver virtualbox --engine-insecure-registry 122.114.40.73:5001 dev 

  来创建一个默认镜像仓库为公司地址的 docker 环境 (dev)

四、docker 操作注意事项

windows 下用 cmd 或者 gitbash 进入命令行窗口进行docker或git 的操作。 docker 进入的是 docker shell 的命令窗口 进入 docker shell 方式: 在 cmd 或 git bash 命令行下 输入 docker-machine ssh dev 进 入 docker shell 建议与 docker 环境交互的命令全在docker shell 中执行

 五、Docker 使用

1. 打开 git bash
2. 查看 docker 机器的状态: 可查看机器的 ip,可以创建多个机器 docker-machine.exe ls
3. 启动并进入所选择的 docker 机器 docker-machine.exe start dev docker-machine.exe ssh dev
4. 依据上面创建 docker 机器的命令已经拉取过镜像了。 在机器里面创建镜像

A. 远程拉取 docker pull 122.114.40.73:5001/django:1.8.7

B. 本地上传镜像(需要在设置共享目录之后)

1) win + R \\192.168.0.130 点击确定后选择要使用 的镜像进行复制, 复制到 docker 的共享目录下 Work

2) 进入容器 docker-machine.exe ssh dev 进入容器中的共享目录,ls, 找到你粘贴的镜像, cat django1_2_3.tar.gz |docker load

C. 查看该机器所有的镜像 docker images [options "o">] [name] docker search 镜像名字
5. 设置共享目录

A. 建立文件夹, 作为共享目录的文件夹 sudo mkdir -p /mnt/code

B. 设置 VirtualBox 的共享文件夹 打开桌面上打开 VirtualBox,选择对应的机器,点击设置-> 选择共享文件夹,设置共享文件夹的路径以及名称, 选择固 定分配,确定保存

C. 设置自动挂载 进入对应的机器(ssh), 打开以下文件 sudo vi /var/lib/boot2docker/profile 最后一行增加: (work 为 B 中共享文件夹的名称) sudo mkdir -p /mnt/code && sudo mount -t vboxsf Work /mnt/code

D. 退出重启 docker-machine.exe restart dev
E. 进入镜像查看共享目录 docker run -it -v /mnt/code/:/code 122.114.40.73:5001/django:1.8.7 /bin/bash cd /code
6. 创建对应项目的容器, 并启用别名(django 镜像为例子) :

A. docker create --name 容器名 -it --net=host -v 共享目 录: 挂载路径 122.114.40.73:5001/django:1.8.7 项目启 动命令

例: docker create --name media -it --net=host -v /mnt/code/:/code 122.114.40.73:5001/django:1.8.7 python /code/GitProject/tbkt_media/manage.py runserver 0.0.0.0:808 通过上面启动的容器, 只能通过 docker 机器的 ip 对应上面 的端口进行访问。 可以写个 sh 脚本进行映射,映射到本地的指 定端口 例: docker-machine ssh dev -L :808:localhost:8009

B. 直接端口映射创建容器 docker run -d -v /Users/yy_stu_web_dj/tbkt:/code -p 8000:8099 --entrypoint=python hub.tbkt.cn:5001/django:1.8.7 /code/manage.py runserver 0.0.0.0:8000 查找对应的进程(容器) ,并设置名字 docker ps -a docker rename 进程 id 容器名字 7. 启动容器(项目) docker start 容器名字 docker restart 容器名字 重启容器
8. 根据名字查看项目运行的日志 docker logs -f --tail=50 容器名称
9. 通过容器名进入容器 docker exec -it 容器名字 bash 或 docker exec -it 容器名字 /bin/sh
10.删除容器 查看机器里面创建的所有容器 docker ps -a
docker rm -f 容器名 docker rm -f 容器进程号

 

 

1.安装Docker Toolbox、
2.安装完成后,桌面上会多出3各图标,Oracle VM VirtualBox,Kitematic (Alpha),Docker Quickstart Terminal
3.运行Docker Quickstart Terminal,首次运行时会进行Docker环境的初始化,会在Oracle VM VirtualBox中自动创建名字为【default】的linux虚拟机,
也可以自己指定创建虚拟机
创建 docker 机器
dev docker-machine.exe create --driver virtualbox --engine-insecure-registry 122.114.40.73:5001 dev
来创建一个默认镜像仓库为公司地址的docker 环境(dev)
问题:
再此过程中会用到boot2docker.iso镜像文件。默认情况下,启动程序会从GitHub上下载此文件的最新版,但由于文件相对较大且速度不给力,多数情况下会下载失败,造成Docker环境无法启动,
解决;
DockerToolbox安装文件自带了boot2docker.iso镜像文件,位于安装目录下,将此文件拷至C:\Users\kinda\.docker\machine\cache目录下,然后在网络断开的情况下重新启动,便可初始化成功。
使用xshell进行登录该虚拟机,默认ip:192.168.99.100,账户:docker,密码:tcuser
4.在windows中创建共享目录,然后通过Oracle VM VirtualBox设置当前虚拟机的共享文件夹为刚创建的文件夹,共享到虚拟机的位置自己设定
5.将需要运行的代码放到共享文件夹中
6.拉取公司镜像,原因是公司镜像和线上环境相同,在公司镜像进行代码测试,避免因为环境不同造成的上线问题
docker pull harbor.m.tbkt.cn/base/django1.11.11:v1.6
7.创建公司镜像的容器,并直接运行
1.使用镜像名启动,注意需要加在镜像名后面加‘:’和tag标签
docker run -d -it -v /tbkt/web_api_dj:/code -p 8009:8009 --entrypoint=python --name=web_api djangov1.11.1:v1.6 /code/tbkt/manage.py runserver 0.0.0.0:8009
2.使用镜像id创建容器
# -d后台运行 -it以交互模式运行 -v将当前宿主机器的哪个文件夹映射到容器的哪个文件夹 -p端口映射 --entrypoint指定运行环境 + 需要运行的镜像 + 容器运行需要执行的命令
docker run -d -it -v /docker/wap_stu_dj:/code -p 8009:8009 --entrypoint=python3 b809cddcabe7 /code/tbkt/manage.py runserver 0.0.0.0:8009

# docker logs 查看实时日志 -- tail 查看最后多少条日志
docker logs -f --tail=10 wap_stu

docker-machine start xxx(机器名) 启动指定机器
docker-machine stop or restart 停止和重启
docker-machine ssh xxx(机器名) 进入当前虚拟机
docker-machine.exe ls 查看都有哪些虚拟机
docker-machine.exe create --driver virtualbox --engine-insecure-registry 122.114.40.73:5001 dev

 

转载于:https://www.cnblogs.com/laowang-106/p/11195938.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值