计算机专业大学生必备:Docker基础用法

大多数计算机专业的学生都需要学习数据库原理,不管是MySQL、Oracle还是SQL Server,都需要大量的安装时间,甚至可能会安装失败。如果你想要学习不同版本的数据库有什么区别,那几乎做不到。
很多情况下,这些技能并不需要你去掌握,也就是我们常说的边际效用很低。除了数据库软件以外,在Web项目中,你可能会需要其他的应用服务,如Redis,FTP服务等。通常来说,一个个的去下载安装不仅费时费力,而且还很难复用环境。这也是我第一个要教你的东西。

学习 Docker 的基础功能

Docker是什么,简单来说它和虚拟机很类似,但是原理不同。不同于VMware,Docker占用的资源、运行的效率等方面都要低很多。那我们可以用它做什么呢?我们可以用它来部署一些服务,如MySQL。

在使用Docker之前,我们要先安装它,可以在https://www.docker.com/products/docker-desktop来下来一个Docker包,随后将其安装、启动。
在命令行中输入docker info,出现信息代表安装成功。
成功安装Docker

用docker安装一个mysql

首先我们打开命令行,Windows系统是CMD,Mac系统是Terminal。
在命令行输入docker pull mysql来下载mysql,如下图,如果你想要指定版本(tag),可以输入docker pull mysql:8,具体的版本号参见https://hub.docker.com/_/mysql,不写默认就是latest
安装mysql的过程
随后执行docker image ls -a查看所有的镜像,可以看到mysql:latest
所有的镜像
接下来我们要启动mysql,也就是创建一个容器,使用方法如下。容器由镜像发展而来,一个镜像可以创建多个容器,通过这个特性,可以很轻松的模拟出分布式系统。

docker run --name mysql_latest -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d --restart=always mysql

# 命令行模板,解析:创建名为<container-name>的mysql容器,mysql的root密码是<root-password>,并将容器内部3306端口映射到本机的3306端口,同时在后台运行
# docker run --name <container-name> -p <local-port>:<container-port> -e MYSQL_ROOT_PASSWORD=<root-password> -d mysql:<tag>

# 参数解析:
# <container-name> 这个容器的名字
# <local-port>     本机的端口号
# <container-port> 容器的端口号
# <root-password>  mysql root账号对应的密码
# <tag>            指定的版本,不写默认为`latest`
# --name           容器名
# -d               容器在后台运行
# --restart=always 容器永远会随着docker启动而启动
# 更多参数见:https://hub.docker.com/_/mysql

创建mysql容器
到目前为止,你就已经创建好一个mysql服务了。接下来尝试连接一下,在这里使用Navicat来连接。
连接mysql
连接成功
如果想要通过命令行连接,可以输入docker exec -it mysql_latest bash来进入容器内部的命令行,到这一步不代表你进入了mysql服务,目前的是在容器内部的linux内,可以输入uname -a来查看,当前的身份可以输入whoami命令来查看。
要进入mysql内部,还需要输入mysql -u root -p来进入mysql内部的命令行,具体过程如下:
在这里插入图片描述
至此,你可以在命令行中使用mysql。如果你不想要这个容器了,可以输入docker stop mysql_latest来停止容器,随后输入docker rm mysql_latest来删除容器。

小结

可以发现通过docker来创建mysql非常方便,几乎不会出错,而且你可以随意增加或删除容器。除了mysql之外,你可以安装几乎所有你想得到的服务,如oracle, sql server, mongoDB, redis等。在学习的过程中,你可以不指定--restart=always来确保服务不会自动开启,这样会降低系统资源的占用,而这一点在物理机上处理起来就会麻烦些。
除了数据库服务外,也可以安装一些常见的服务,如Wordpress。在过去,如果要安装Wordpress,你需要安装一堆依赖,包括特定版本以上的PHP,特定数据库,随后创建账号等一系列复杂操作。而在docker中,只需要一行docker pull wordpress来下载,一行docker run --name some-wordpress --network some-network -d wordpress来启动服务就完成了,一些基础的配置就是通过命令行来完成的。
你可以下载一个Nextcloud来构造属于你自己的网盘,也可以下载一个FTP服务来在不同的服务器上传输数据,或者是构造一个搜索引擎ElasticSearch,甚至是虚拟一个操作系统如ubuntu/centos,构建这些都非常简单。

你甚至可以使用它的高级用法docker-compose,可以帮助你构建复杂的应用。你也可以将你的应用构建成一个镜像,来帮助你快速部署到云服务器上,而不需要安装任何响应的环境,除了Docker本身。

  • 6
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值