码迷,mamicode.com
首页 > 其他好文 > 详细

购买服务,用docker部署自己的服务

时间:2019-07-10 15:14:44      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:version   make   应用   install   快速   创建   conf   size   docker简介   

练习使用的mysql被人删库删表了,于是就有了自己搭建一套后台服务的想法,由于目前dicker正流行,正好学习一下新东西,将学习心得记录一下:

一: 购买阿里云服务并配置

购买了一台阿里云的1核2G的云服务, 2年二百多....还是很优惠的.  点击云服务器1对其进行配置

技术图片

第二部需要创建一个实例,选择你需要的os系统版本,本人使用的centOS7.4(据说docker挑版本,7.0以下不好使)

技术图片

 

第三部需要对实例的安全组进行配置,  为了安全起见,我只开通了公司的ip(基本上每天也就在公司度过)

技术图片技术图片

 

 就这样,云服务就可以使用公司ip通过外网访问进去了

技术图片

 

docker简介:

Docker是一个开源的应用容器引擎,属于Linux容器的一种封装,是目前最流行的Linux容器解决方案。docker可以为任何应用创建一个轻量级、可移植的容器,然后容器可以运行在任何安装有docker的平台上。
Docker 的优势:
1、更快速的交付和部署
对开发和运维(devop)人员来说,最希望的就是一次创建或配置,可以在任意地方正常运行。
开发者可以使用一个标准的镜像来构建一套开发容器,开发完成之后,运维人员可以直接使用这个容器来部署代码。 docker 可以快速创建容器,快速迭代应用程序,大量地节约开发、测试、部署的时间。
2、更高效的虚拟化
docker 容器的运行不需要额外的 hypervisor 支持,它是内核级的虚拟化,因此可以实现更高的性能和效率。(使用了宿主机的内核)
3、更轻松的迁移和扩展
docker 容器几乎可以在任意的平台上运行,包括物理机、虚拟机、公有云、私有云、个人电脑、服务器等。 这种兼容性可以让用户把一个应用程序从一个平台直接迁移到另外一个平台。
4、更简单的管理
使用 docker,只需要小小的修改,就可以替代以往大量的更新工作。所有的修改都以增量的方式被分发和更新,从而实现自动化并且高效的管理。

一、部署docker环境

1、安装yum相关工具包
yum install -y yum-utils device-mapper-persistent-data lvm2
2、添加docker下载源
(1)添加docker官方源

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum makecache fast

(2)添加国内阿里云下载节点
注:国内连接docker官方提供的源下载速度比较慢,我这里使用的是阿里云的源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast

3、安装docker
注:安装的是docker社区版本
yum -y install docker-ce
4、更改镜像源为国内阿里云节点,并指定docker数据存储目录

mkdir -p /data/docker
mkdir -p /etc/docker
vim /etc/docker/daemon.json

注:docker安装好后默认没有此文件,需要手动创建,添加阿里云镜像节点,并指定docker存储目录

{
  "registry-mirrors": ["https://registry.docker-cn.com"], "graph": "/data/docker"
}

5、启动docker,并加入开机启动

systemctl start docker
systemctl enable docker

二、Docker架构

Docker使用客户端/服务器(C/S)架构模式,使用远程API来管理和创建docker容器。Docker Client向Docker daemon发起请求,Docker daemon负责构建、运行和分发容器。Docker client也可以通过socket或REST API与远程的Docker daemon通信。

    • Docker daemon:服务端程序,以后台的方式运行。负责创建、运行、监控容器,构建、存储镜像。
    • Docker client:Docker客户端,通过命令行或其他工具使用Docker API与Docker daemon通信。
    • Images:Docker镜像,用于创建docker容器的模板,我们通过镜像来创建docker容器。
    • Container:Docker容器,是从镜像创建的运行实例,每一个容器都相当于一个虚拟的应用环境,通过容器来运行各式各样的应用。
    • Registry:存放Docker镜像的仓库,分为公有仓库和私有仓库两种。

三、Docker目录结构

Docker安装成功后,默认是没有存储目录的,在启动的时候才会创建存储目录。我们来看下docker都有哪些目录吧。
ls -lh /data/docker/

containerd目录里存放的是与daemon程序相关的数据。
image和overlay2目录里存放的是与镜像相关的数据。每下载一个镜像,就会在这两个目录下生成此镜像对应的子目录与数据;每运行一个镜像,即通过镜像创建一个容器,这两个目录下也会生成相关子目录与数据信息。
containers目录里存放的是容器相关的数据,每运行一个容器,就在这个目录下面生成一个容器Id对应的子目录与数据。
tmp是临时文件存放目录。

四、Docker命令使用

1、systemctl start docker 启动docker;docker version查看docker版本信息

技术图片

 2.查看docker基本信息

docker info

3.查看docker hub 镜像库,可以在镜像库中查看可用的docker版本:https://hub.docker.com/  如搜索mysql: 带有OFFICIAL的是官方的,

点击进入后可以查看对应的使用手册,版本信息,留言贴等信息 

技术图片

 

 4.安装镜像,以mysql为例

docker pull mysql:5.7.26

安装完后可以查看系统中存在的镜像

docker images

REPOSITORY:镜像名称,与镜像仓库上的名称一致
TAG:标记,下载的镜像默认会使用latest标记
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像占用磁盘空间大小

技术图片

5. 删除镜像

docker rmi mysql:5.7.26

6.生成一条新镜像  改名后的镜像和原镜像使用同一个image id

docker tag mysql:5.7.26 mymysql # 新名称不能是大写

7.保存一个tar包在本地 / 从本底加载一个tar包到容器

技术图片

8.运行一个容器:以mysql为例

docker run --name docker-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=wang053056 -d mysql:5.7.26

--name  给容器命名   -p 宿主机ip映射到容器ip  保证可以通过访问宿主机访问到容器

-d  后台运行  不写的话会造成推出后容器自动关闭

9. 停止运行容器   删除容器   重新启动

技术图片

技术图片

技术图片

10.查看某容器运行日志

技术图片

 

 11.打印基本配置信息

 技术图片

12.登陆容器内部,在容器内部运行shell

-i:打开容器的标准输入,即以交互模式运行容器
-t:为容器分配一个伪终端

技术图片

技术图片

 

 13, 在宿主机和容器中cp文件

docker cp a.txt docker-mysql:/root/

技术图片

 14.查看某端口是否被监听

技术图片

15.

 

购买服务,用docker部署自己的服务

标签:version   make   应用   install   快速   创建   conf   size   docker简介   

原文地址:https://www.cnblogs.com/1026164853qqcom/p/11161673.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!