zoukankan      html  css  js  c++  java
  • 【Step By Step】将Dotnet Core部署到Docker(中)

    在Docker中运行MySql

    MySQL 官方也提供了各种版本的MySQL Image来供用户使用,我们可以使用如下命令来创建并运行一个MySQL Image:

    docker run -it -p 3306:3306 --name mysqldb -e MYSQL_ROOT_PASSWORD=root mysql:latest

    其中,-e MYSQL_ROOT_PASSWORD指定MYSQL Root用户的密码。

    除此之外,可用的选项还有:MYSQL_ROOT_PASSWORD、MYSQL_DATABASE、MYSQL_USER、MYSQL_PASSWORD、MYSQL_ALLOW_EMPTY_PASSWORD等。具体的可以查阅资料:https://hub.docker.com/_/mysql/

    PS:Mysql镜像体积相对较大,由于国内众所周知的原因,我们可能下载的非常慢,我们可以使用DaoCloud提供的镜像加速服务,需要先登录官网注册一下http://www.daocloud.io/ ,然后到了控制台之后,上方有个加速器按钮,执行一下他给的那个命令就好了,大概就是curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://你的ID.m.daocloud.io,据说每个用户每个月是10GB的流量,一般来说,足矣~

    验证你运行在Docker中的Mysql

    运行完上面的命令,经过一段时间的等待,如果正常的话,Mysql镜像就已经运行运行起来了。

    方法一:通过Mysql可视化连接工具

    我们可以使用Mysql工具来验证,直接使用你Linux服务器的ip,通过3306端口和root用户去访问你运行在Docker中的Mysql数据库吧(突然感觉以后想用啥数据库,Docker里面跑个image就好了,简直爽的无法无天)~

    方法二:通过mysql命令行验证

    除了可视化工具,我们还可以通过Mysql的命令行工具来验证我们的Mysql服务是否正常在运行,但是因为我们的Docker在容器运行起来之后,这个shell就被他“霸占”了,我们不管敲啥,他这个shell都用不了~

    • 首先需要通过快捷键:ctrl+p+q来返回宿主机的shell界面
    • 然后我们可以通过docker exec来重启一个shell操作你正在运行的Mysql容器,我们先通过docker ps查询到Mysql容器的Container ID,然后执行命令:docker exec –it  ContainerID /bin/bash 来新建一个shell UI

    使用Docker exec命令可以执行Container中的一些命令,这里的/bin/bash代表的就是linux的shell程序

    • 进入shell界面之后,我们通过命令mysql -uroot --p来进入mysql的管理界面,输入命令之后,系统会提示你输入mysql root账户的密码,输入我们在运行这个容器时候设定的密码即可
    • 输入show databases;命令来查询Msyql中现有的数据库查询结果大概如下(注意每个命令后面必须加分号):
    • image
    • 最后我们可以通过exit命令推出mysql管理控制台

    方法三:新建一个container来访问mysql并验证

    这个方法大概与方法二相同,我们还可以用另外一个Container,来通过Mysql命令行来操作我们的数据库。我们需要用到Link命令来建立两个容器直接的联系,

    $ docker run -it --name jb91linkmysql --link jb91db:mysql --rm mysql:5.5.41 sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'

    其中 --rm 指:完成操作后停止容器并从文件系统移除

    sh 指执行后面的脚本,-c就是所要执行的命令(command)

  • 相关阅读:
    第34周二
    JAVA数组的定义及用法
    最小生成树(普利姆算法、克鲁斯卡尔算法)
    再谈Hibernate级联删除——JPA下的Hibernate实现一对多级联删除CascadeType.DELETE_ORPHAN
    站点系统压力測试Jmeter+Badboy
    AfxMessageBox和MessageBox差别
    最长递增子序列
    JAVA Metrics 度量工具使用介绍1
    递归函数时间复杂度分析
    HDU 5052 LCT
  • 原文地址:https://www.cnblogs.com/baiyunchen/p/5898604.html
Copyright © 2011-2022 走看看