zoukankan      html  css  js  c++  java
  • 《SelfClass》——Docker

    《SelfClass》——Docker

    根据我的个人计划,我需要先了解一下Docker,并且能够使用起来。

    目的:在我Mac上搭建一个Docker,在Docker上搭建一个MySQL数据库。

    Docker是什么

    先说说我的理解:Docker是一个服务请求容器,我举个例子,比如说你的电脑刚刚重装了,你之前电脑上装的Git,MySQL,各种环境变量什么的都需要重新配置。还有Tomcat, maven ,等等,各种配置文件啥的。有了Docker,你就搭在Docker,以后想换服务器了,迁移了, 一下就把这个东西给全部迁移走了,这相当于是一个小的容器系统。

    下载Docker

    官网:https://www.docker.com/get-started

    操作系统:macOS 11 -> Docker.dmg (size:500M)

    image-20201126091657283

    在我下载的时候提示这个:Developer productivity tools and a local Kubernetes environment.

    我猜测Docker肯定和Kuberneters有关了。

    安装Docker

    下载的是dmg安装包,直接双击打开安装即可

    image-20201126091724375

    image-20201126091732282

    Size:安装包500M,解压后1.6G

    使用Docker

    安装完之后,难道就是一个软件吗?我比较懵逼的打开了这个App。出来这么一个界面。

    image-20201126091758360

    image-20201126091809837

    • 第一步clone:

      让选择一个自己的仓库克隆。我是第一次使用,我就使用了官方提供的 getting-started 项目

    	docker run --name repo alpine/git clone https://github.com/docker/getting-started.git
    
    ​	docker cp repo:/git/getting-started/ .
    
    • 第二步Build:

      构建一个镜像,我没有镜像,就执行了官方提供的命令、

    	cd getting-started 
    
    ​	docker build -t docker101tutorial.
    
    • 第三步Run:

      运行也一个镜像容器。

    docker run -d -p 80:80 --name docker-tutorial docker101tutorial
    
    • 第四步Share:

      保存或者是分享我的image。 我先去申请一个Docker账号。发现里面和Git是一个原理

    https://hub.docker.com/ 这是Docker的Hub。注册好之后,自己的账号就有自己的仓库地址了。

    	docker tag docker101tutorial dawabigbaby/docker101tutorial
    
    ​	docker push dawabigbaby/docker101tutorial
    

    我本地的管理界面:

    image-20201126092003569

    ​ 访问:http://localhost/tutorial/ 就能访问我打包的这个项目

    ​ 再看一下我的Docker Hub

    image-20201126092026481

    已经存储到远端服务器上了。(Docker push)

    仓库地址是:https://hub.docker.com/repository/docker/dawabigbaby/docker101tutorial

    OK,到此为止,我大概对于Docker的安装和使用过程已经明白了。

    Docker类似于一个容器,Docker Hub又提供了使用Git管理的Docker容器仓库,可以将自己本地的Docker image给打包发布上面。

    随时随地可以获取下来。

    然后我要尝试在Docker Image上安装一些服务和应用。

    在本地Docker上,找到我刚才安装的那个Image。选择cli,其实就进入了这个上面的一个服务器上,可以通过命令行来进行操作了。

    image-20201126092048743

  • 相关阅读:
    手写Promise——基于es6的Promise实现(含详细注释)
    手写promise
    package.json里面配置的啥
    package.json配置详解
    package.json的所有配置项及其用法,你都熟悉么
    sass语法进阶小结
    [转]利用vue-cli3快速搭建vue项目详细过程
    vue的接口封装和状态管理
    Vue项目封装请求数据的接口总结
    JSDoc入门使用指南 -- 手摸手教你用JSDoc(超好用的js文档生成工具)
  • 原文地址:https://www.cnblogs.com/bigbaby/p/14040575.html
Copyright © 2011-2022 走看看