轻量云服务器Ubuntu18.4如何配置docker

今天就跟大家聊聊有关轻量云服务器Ubuntu18.4如何配置docker,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

我们提供的服务有:成都网站设计、网站制作、微信公众号开发、网站优化、网站认证、川汇ssl等。为近千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的川汇网站制作公司

1、演示系统需求

a. 云轻量服务器ubuntu18.4

b. ssh连接工具xshell6

2、步骤

# 1. 使用xshell连接上服务器,并更新apt安装源
sudo apt-get update

# 2. 安装必要的系统工具
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common

# 3. 安装docker-ce 的 GPG证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

# 4. 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

# 5. 安装并跟新docker-ce (此为官方免费版)
sudo apt-get -y update
sudo apt-get -y install docker-ce

3、验证安装

docker version

4、案例理解

通过学习资源后,我对于docker的理解(初学,个人理解,若错误请指正,共同进步)

轻量云服务器Ubuntu18.4如何配置docker

每个docker的Image镜像都像一个安装了对应环境的微型linux虚拟机。docker可以管理这些镜像。 比如当pull一个Nginx的images下来,此时该就拥有了nginx环境的“虚拟机”,同样可以通过image id进入内部,就如同linux的目录一样。特别干净轻量,只包含了nginx配置。 同docker去管理一个container应用。 一个images镜像一般值对应一个container,既只跑一个应用。单一原则,3C原则。 不用包打包的项目部署到container中,images镜像应该是封闭的。 把自己打包后的项目,比如vue项目,打包为dist上传到服务器的任意地址,通过docker把该目录挂在到Images为nginx的镜像上,挂在后为Container。在Images中,该container应用为80端口,目录应该配置在Images("类似虚拟机")的/usr/share/nginx/html/下。开放端口为80,通过docker命令,做目录和端口映射。将其映射到外部的dist所在绝对地址,该外部开放为81端口。这样就可以通过服务器ip地址访问到在docker中的应用了。

4.1、 案例解释:docker线上部署nginx

  1. 拉取images镜像(nginx的)

docker images
# 查看当前存在的镜像
# 安装docker后,查看镜像,现在还一个都没有

轻量云服务器Ubuntu18.4如何配置docker

# docker search nginx 查看docker hub中是否有nginx
docker pull nginx
# 从dockerhub拉取一个nginx镜像
# docker images

轻量云服务器Ubuntu18.4如何配置docker 轻量云服务器Ubuntu18.4如何配置docker

至此,配置好nginx的images镜像已经拉取下来了,(像一台带环境的微型虚拟机已经弄好nginx了,现在需要在里面去跑我们的应用了,通过container去跑应用)

记不记得原来没有使用docker配置好nginx后默认目录在/usr/share/nginx/html/中。默认访问端口为ip :80端口。会有一个hello nginx的页面 如果我们现在也要测试是否可以了呢? docker需要去跑container容器。然后改容器映射dist和端口

  1. 上传本地打包的项目到指定目录。

我这儿使用新建做案例

cd /root
# 跳转到根目录
mkdir nginx
cd nginx
# 创建nginx文件夹
mkdir vueDistData
# 创建 vueDistData用于存放打包的项目
cd vueDistData
vim index.html
# 创建随意页面。通过container映射,会访问到它。
cat index.html
# 查看index.html里面都有啥

轻量云服务器Ubuntu18.4如何配置docker

  1. OK,现在要通过Images Nginx来访问它。首先更改Images Nginx的container配置,并跑起来

docker run --name nginx -v /root/nginx/vueDistData:/usr/share/nginx/html -p 80:80 -d nginx

# --name对container重命名为nginx
# -v 做映射,将本地目录映射到镜像的容器目录,映射可以有多个,还可以映射nginx.config
# -p 端口映射,将本地开放出去的端口映射到镜像的容器使用端口。此时都为80
# -d ngixn 后台执行nginx这个镜像

轻量云服务器Ubuntu18.4如何配置docker

# 使用docker ps查看正在执行的镜像和其容器
docker ps
可以看到
container id: 容器id
images: 镜像
created: 创建时间
status: 状态
ports: 映射出去端口和方式tcp
names: container的名字
  1. 现在测试访问

查看服务器ip 轻量云服务器Ubuntu18.4如何配置docker

我的是39.108.142.129,通过浏览器访问39.108.142.129:80看看能不能访问到,我们写在/root/nginx/vueDistData/下面的index.html。

虽然有中文乱码,但是成功了。至此部署nginx成功,把vue项目打包为dist里面的文件全部考到vueDistData下即可

轻量云服务器Ubuntu18.4如何配置docker

有没有发现,还是有点麻烦,感觉个传统nginx部署差不多。

其实docker要慢慢学。我部署一个Images为Nginx成功,下次还可以不是apache tomcat等。不需要我去配置环境和端口。丢到映射好端口的文件夹下就可以了。

其实,真正的部署时不需要这么麻烦的。学习资料中有介绍到,通过dockfile去配置所有所有的一切。包括拉取镜像,命名容器,映射目录端口。然后通过docker build执行。 在项目中编写dockerfile,打包后存放到服务器随意目录,修改一下dockfile,然后docker build会去根据dockfile拉取配置一切 则可以自动部署。 我暂时没有学到。所以就不介绍了。

4.2 docker学习重点原则

  1. 3C 单一原则,一个Images对应一个Container

  2. 数据等信息一般不适用docker部署。比如数据库,不要拉一个Images下来,在images里面去做数据库,docker镜像的可变动性很强,容易造成数据丢失。

看完上述内容,你们对轻量云服务器Ubuntu18.4如何配置docker有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。


分享名称:轻量云服务器Ubuntu18.4如何配置docker
网站链接:http://cdiso.cn/article/gddsjg.html

其他资讯