资讯专栏INFORMATION COLUMN

docker初战

raoyi / 1536人阅读

摘要:它是目前最流行的容器解决方案。将应用程序与该程序的依赖,打包在一个文件里面。当然要记住下面这些也不难,通过后面的实战示例再加上一两次自己的熟悉基本就能记住了。标识是让容器在后台运行。停止容器名为的容器。删除镜像名为的镜像。

虽然已经安装了docker很久了,但在以前都没有认真的去学习使用过,只是大概的了解了一下原理就放下不管了,在本周的项目中,潘老师要求我们使用docker来使用数据库,趁此机会,总算是成功的掌握了docker的基本用法。

什么是docker
Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口。它是目前最流行的 Linux 容器解决方案。

Docker 将应用程序与该程序的依赖,打包在一个文件里面。运行这个文件,就会生成一个虚拟容器。
程序在这个虚拟容器里运行,就好像在真实的物理机上运行一样。有了 Docker,就不用担心环境问题。

总体来说,Docker 的接口相当简单,用户可以方便地创建和使用容器,把自己的应用放入容器。容器还可以进行版本管理、复制、分享、修改,就像管理普通的代码一样。

上面的解释引自阮一峰的博客,就我的理解来说docker就是一个特别轻量级的虚拟机,然后以端口映射的方式让本机访问它的应用程序,从而避免在本机进行繁琐的开发环境配置。

docker必知必会

下面是使用docker过程中必用的一些命令,放到这里当然不是因为他们容易记,而是为了以后方便查阅。

当然要记住下面这些也不难,通过后面的实战示例再加上一两次自己的熟悉基本就能记住了。

docker help 查看帮助,help应该是所有命令行程序最重要的命令了

docker pull 从Docker Hub中拉取或者更新指定镜像。

docker run

-d 标识是让 docker 容器在后台运行。

-p 标识通知 Docker 将容器内部使用的网络端口映射到我们使用的主机上。

-it 使用交互模式

--name 定义一个容器的名字,如果在执行docker run时没有指定Name,那么deamon会自动生成一个随机数字符串当做UUID。

-e 设置环境变量,或者覆盖已存在的环境变量。

–link 连接运行的容器

例如:docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=password -d mysql/mysql-server:latest

含义:容器的名字为mysql,将容器的3306端口映射到本机的3306端口,mysql数据库的密码为password ,运行的镜像为mysql/mysql-server:latest

docker ps 

-a 查看已经创建的容器

-s 查看已经启动的容器

docker start con_name 启动容器名为con_name的容器。

docker stop con_name 停止容器名为con_name的容器。

docker rm con_name 删除容器名为con_name的容器。

docker rmi img_name 删除镜像名为img_name的镜像。

docker exec -it con_name bash 以bash启动该容器

在docker中使用mysql

接下来我将会在docker中新建并启动一个mysql容器,然后以本地访问。

拉取官方镜像
docker pull mysql:5.7.21
创建一个容器并运行
docker run --name mysql -p 3309:3306 -e MYSQL_ROOT_PASSWORD=test -d mysql:5.7.21
容器的名字为mysql,将容器的3306端口映射到本机的3309端口,mysql数据库的密码为test ,容器在后台运行,运行的镜像为mysql:5.7.21
查看一下容器的运行状态
docker ps

本地访问试试

没有任何问题

想要直接对容器进行操作?

使用下面的命令就可以了

docker run -it --link mysql:mysql --rm mysql:5.7.21 sh -c "exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -p"


这就直接进入了容器的mysql中。

黄庭祥教了我另一个方法,可以理解为上一步方法的分步执行

首先进入容器
docker exec -it mysql bash


可以发现这个容器和我们的linux基本一样,各种基础的命令都能执行

在容器中启动mysql
mysql -uroot -p -h localhost

参考文章

docker下的Mysql镜像的使用方法
使用docker的mysql镜像
Docker 入门教程

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/49316.html

相关文章

  • Docker实战之Quick Start

    摘要:如果使用操作系统自带包安装,目前安装的版本是比较旧的。之前版本如果是较低版本的系统,需要先更新内核。然后重复上面的步骤即可。 Quick Start Installation Ubuntu 通过系统自带包安装 Ubuntu 14.04 版本系统中已经自带了 Docker 包,可以直接安装。 $ sudo apt-get update $ sudo apt-get install -y ...

    alaege 评论0 收藏0
  • CentOS 7 安装 Docker-CE

    摘要:使用官方安装脚本使用官方安装脚本自动安装,仅适用于公网环境。安装指定版本的注意在某些版本之后,安装出现了其他依赖包,如果安装失败的话请关注错误信息。例如之后,需要先安装。使用官方安装脚本使用官方安装脚本自动安装,仅适用于公网环境。# 安装之前需卸载旧版本 sudo yum remove docker CE docker-client ...

    Tecode 评论0 收藏0
  • [Docker 官方文档] 理解 Docker

    摘要:将一个轻量级的容器虚拟化平台和一组标准工作流程工具进行集成,来帮助你方便地管理和部署应用。主要包括哪些组件主要包括两个组件开源的容器虚拟化平台用于分享和管理容器的软件即服务平台。 【编者的话】本文来自 Docker 的官方文档,详细介绍了 Docker 的体系结构、重要概念、内部工作机理等内容,推荐不了解 Docker 内部原理的同学阅读。 什么是 Docker? Docker 是...

    cncoder 评论0 收藏0
  • Docker入门(二)

    摘要:下面给出了其中几个子命令。将指定名称的容器拉取到系统中。列出正在运行的容器。起初只是之上的一个软件层但现在已经演化成为一个独立的系统。服务器的主要配置文件位于和参考从构建镜像命令的用法 检查安装情况 centos7下 // 删除旧版本和相关依赖 yum remove docker docker-client d...

    Airy 评论0 收藏0
  • 30 分钟快速入门 Docker 教程

    摘要:分钟快速入门教程一欢迎来到世界与虚拟化在没有的时代,我们会使用硬件虚拟化虚拟机以提供隔离。仓库分为公开仓库和私有仓库,最大的公开仓库是官方仓库,国内的公开仓库也有很多选择,例如阿里云等。 原文地址:梁桂钊的博客博客地址:http://blog.720ui.com 欢迎关注公众号:「服务端思维」。一群同频者,一起成长,一起精进,打破认知的局限性。 30 分钟快速入门 Docker 教程...

    Binguner 评论0 收藏0

发表评论

0条评论

raoyi

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<