Day11 Docker

在Day5的时候有提到可以使用XAMPP来安装Apache、MySQL、PHP,当然也有下指令安装这些服务的方式,但这些方法会让所有的服务混在一起,因此於2013就诞生这Docker这项服务,能使各个服务独立、容器化,甚至後面可将环境变数文件化等等。

Docker的服务在还没有被执行起来时称为Image,被启用後的服务称为Container,有点像物件导向的Class与Object的概念,今天以PostgreSQL作为范例来介绍,PostgesSQL也是一套资料库的服务,与MySQL类似,两者也都有提供容器化的服务,可至DockerHub找寻自己想要的Image,那下面就开始实作吧。

  • 打开terminal下指令安装docker
curl -sSL https://get.docker.com/ | sh
  • 将今天要使用的主角postgresql的Image下载下来,13代表着版本号为13版
docker pull postgres:13
  • 可以利用指令来检查已经下载过哪些Image
docker images
  • 将container建立起来,name後面代表此container的名称,-e可以加上各式各样的环境变数,-p代表开一个对外的port才能让其他服务(如Navicat)连线,-d代表会在後台持续运作,最後面代表使用的Image
docker run --name some-postgres -e POSTGRES_PASSWORD=mysecretpassword -p 5432:5432 -d postgres:13
  • 建立起来後可以用指令检查container的状态
docker ps

https://ithelp.ithome.com.tw/upload/images/20210911/20115048jnPAPKA1cF.jpg

  • 接着就可以打开Navicate来连线了,打开Navicate後点选左上角connection,选择postgreSQL,Connection Name依照个人喜好填写即可,Password填写启动container时的密码mysecretpassword就可以连线了,Navicate的UI真的做得很精美呢
    https://ithelp.ithome.com.tw/upload/images/20210911/20115048aePPqBYbIo.png
  • 使用指令停止container服务
docker stop some-postgres

今天的介绍到此结束,谢谢观看的各位,请记得按赞分享开启小铃铛,你的支持会让按赞数+1。


<<:  Trouble with Distributed Systems (3-2) - Unreliable Clocks

>>:  【LeetCode】Binary Search Tree

Day25. Blue Prism让你远离挑灯夜战的日子 –BP自动登打订单

昨天加班加的凶, 到现在为止都还在挑灯夜战, 不过,在不景气的日子人就要想着变通, 才会有机会的到来...

DAY 23 Typography, Hover 以及 Extend

随着内容越来越多,结构更加复杂,是时候来整理一下关於字型的配置,这次我们来新增一个 _typogra...

机器学习:模型训练架构

分散式运算架构 MapReduce 利用函式语言程序设计的概念,将分散运算分为映射(Map)和归纳...

Day23 什麽是 HTTP 状态码(HTTP Status Code)?

大家好,我是乌木白,今天要和大家介绍,HTTP 状态码? 什麽是 HTTP 状态码? 在上一篇,我...

後浪推前浪--前浪死在沙滩上,浅谈class

物件导向概述 物件导向程序设计(Object Oriented Programming)简称OOP,...