windows docker测试过程

在Windows中玩转DockerToolbox

https://www.cnblogs.com/studyzy/p/6113221.html

使用docker-machinestopdefault停掉Docker的虚拟机。

docker-machinestartdefault就可以启动新地址的Docker虚拟机了

docker-machinerestartdefault

查看当前有哪些镜像:

dockerimages

当前有哪些容器:

dockerps–a

我们可以看到我们当前的Docker虚拟机的状态

docker-machinels

创建一个Docker虚拟机。

docker-machinecreate--driver=virtualboxdefault

username:docker

password:tcuser

获得虚拟机的环境变量:

docker-machineenvdefault

//进入虚拟机

docker-machinesshdefault

//加速度器设置

sudosed-i"s|EXTRA_ARGS='|EXTRA_ARGS='--registry-mirror=http://f1361db2.m.daocloud.io|g"/var/lib/boot2docker/profile

//共享文件夹与Ubuntu的某个目录关联起来

此处我选择在/mnt下创建一个“share”目录,将刚刚的“gongxiang”目录与“share”目录关联起来。

进入/mnt:

cd/mnt

创建share目录:

sudomkdirshare

将“gongxiang”目录与“share”目录进行关联:

sudomount-tvboxsfgongxiang/mnt/share

---------------------

版权声明:本文为CSDN博主「曾博文」的原创文章,遵循CC4.0by-sa版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/z191726501/article/details/78484767

//查看远程镜象

dockersearchmysql

dockerrun-d-p3306:3306--namemysql-eMYSQL_ROOT_PASSWORD=123456mysql:latest

接下来我们打开windows下的mysql客户端,服务器地址填docker虚拟机的IP地址,通过docker-machineenv可以看到,我这里是192.168.99.100,

然后用户名root,密码123,这样我们就可以连接到docker容器里面的mysql了。

//进入容器里

dockerexec-itmysqlbash

//启动mysql,用navica连接不上

https://www.e-learn.cn/content/mysql/1256390

解决办法:

一、在docker中启动mysql,定义端口号3306

[root@localhost~]#dockerrun-p3306:3306--namemysql01-eMYSQL_ROOT_PASSWORD=123456-dmysql

二、执行命令,输入密码

[root@localhost~]#dockerexec-itmysql01bash

root@863b69d78d4f:/#mysql-uroot-p

Enterpassword:

WelcometotheMySQLmonitor.Commandsendwith;or\g.

YourMySQLconnectionidis8

Serverversion:8.0.12MySQLCommunityServer-GPL

Copyright(c)2000,2018,Oracleand/oritsaffiliates.Allrightsreserved.

OracleisaregisteredtrademarkofOracleCorporationand/orits

affiliates.Othernamesmaybetrademarksoftheirrespective

owners.

Type'help;'or'\h'forhelp.Type'\c'toclearthecurrentinputstatement.

mysql>

三、授权

mysql>GRANTALLON*.*TO'root'@'%';

四、刷新权限

mysql>flushprivileges;

五、更改加密规则

mysql>ALTERUSER'root'@'localhost'IDENTIFIEDBY'password'PASSWORDEXPIRENEVER;

六、更新root用户密码(123456是我的密码,要替换成自己的)

mysql>ALTERUSER'root'@'%'IDENTIFIEDWITHmysql_native_passwordBY'123456';

七、刷新权限

mysql>flushprivileges;

dockerstop<container-id>或容器名字

dockerkill<container-id>

dockercreate<image-id>

dockerstart<container-id>

dockerrun

dockerstop命令会向运行中的容器发送一个SIGTERM的信号,然后停止所有的进程。

dockerkill命令向所有运行在容器中的进程发送了一个不友好的SIGKILL信号。

dockerrm<container-id>

dockerrm命令会移除构成容器的可读写层。注意,这个命令只能对非运行态容器执行。

dockerrmi<image-id>

dockerrmi命令会移除构成镜像的一个只读层。你只能够使用dockerrmi来移除最顶层(toplevellayer)(也可以说是镜像),你也可以使用-f参数来强制删除中间的只读层。

dockercommit<container-id>

dockercommit命令将容器的可读写层转换为一个只读层,这样就把一个容器转换成了不可变的镜像。

dockerbuild命令非常有趣,它会反复的执行多个命令。

我们从上图可以看到,build命令根据Dockerfile文件中的FROM指令获取到镜像,然后重复地1)run(create和start)、2)修改、3)commit。在循环中的每一步都会生成一个新的层,因此许多新的层会被创建。

dockerexec<running-container-id>

dockerexec命令会在运行中的容器执行一个新进程。

dockerinspect<container-id>or<image-id>

dockerinspect命令会提取出容器或者镜像最顶层的元数据。

dockersave<image-id>

dockersave命令会创建一个镜像的压缩文件,这个文件能够在另外一个主机的Docker上使用。和export命令不同,这个命令为每一个层都保存了它们的元数据。这个命令只能对镜像生效。

dockerexport<container-id>

dockerexport命令创建一个tar文件,并且移除了元数据和不必要的层,将多个层整合成了一个层,只保存了当前统一视角看到的内容

dockerhistory<image-id>

dockerhistory命令递归地输出指定镜像的历史镜像。

dockerhistory:查看指定镜像的创建历史。

dockerexec-itmysqlbash

在容器内使用dockerlogs命令,查看容器内的标准输出

来查看容器端口的映射情况。

dockerportbf08b7f2cd89或dockerportwizardly_chandrasekhar

来查看Docker的底层信息

dockerinspect来查看Docker的底层信息。它会返回一个JSON文件记录着Docker容器的配置和状态信息。

dockerinspectmysql

删除不需要的容器

dockerrm命令来删除不需要的容器

查找镜像

dockersearchhttpd

nginx

http://192.168.99.100:8081

tomcat

http://192.168.99.100:8080

http://192.168.99.100:8082

redis

dockerexec-itredisredis-cli