从零开始 - Docker部署前后端分离项目(一)

简介: 从零开始 - Docker部署前后端分离项目(一)Docker是一个开源的应用容器引擎,使用GO语言开发,并利用 Linux 内核的几个特性来提供其功能。Docker 使应用程序与基础设施分开,以便可以快速交付软件。

从零开始 - Docker部署前后端分离项目(一)

Docker是一个开源的应用容器引擎,使用GO语言开发,并利用 Linux 内核的几个特性来提供其功能。Docker 使应用程序与基础设施分开,以便可以快速交付软件。

一、前言

此系列的文章基于以下环境:


阿里云服务器ECS


CPU&内存 :1核(vCPU) 2 GiB


操作系统:Ubuntu 20.04 64位


二、安装Docker

安装 docker 最简单的方法是使用官方脚本自动安装


安装命如下:


先保证apt是最新版本,更新apt

apt update

进行docker下载

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

image.png

各种 Linux 系统的手动安装步骤见:https://docs.docker.com/engine/install/

1、镜像加速

修改/etc/docker/daemon.json 文件,如果没有先建一个即可

sudo vim /etc/docker/daemon.json

修改配置文件内如下:

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

然后重启服务

$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

2、验证docker

查看docker服务是否启动:

systemctl status docker

image.png

若未启动,则启动docker服务:

systemctl start docker

3、docker开机自启

# 查看是否设置开机启动
systemctl list-unit-files | grep docker.service.*enabled
# 设置开机启动
systemctl enable docker.service
# 关闭开机启动
systemctl disable docker.service

image.png

三、容器的常用命令

容器就是根据镜像启动的一个进程,它就是一个运行的系统。

1. 创建容器

根据一个镜像创建容器,命令格式如下:

docker container run [options] image [command]
docker run [options] image [command]

run:就是运行容器的命令

options: 一系列的参数,可以省略

image: 启动容器的镜像

command: 容器要执行的命令

例如:

docker run ubuntu:latest /bin/echo "hello world"

表示根据镜像ubuntu:latest启动一个容器,运行命令/bin/echo "hello world",如果本地没有ubuntu:latest镜像,会自动去仓库下载。

image.png

注意,如果容器运行的命令结束了(不管是正常结束,还是有错误结束),容器会退出。

2. 创建容器的常用参数

docker run --name redis -d --network mwj --restart=always -v redis_data:/data

参数

描述

-i

交互式创建容器
-t 分配一个伪终端

-d

运行容器到后台
-e 设置环境变量
-p 映射容器端口到主机
-h 设置容器主机名
–link 添加连接到另一个容器
–network 连接容器到一个网络
-v 挂载宿主机目录到容器
–restart 容器退出后的重启策略,默认 no[always|failure]
–name 给容器命令

启动容器

启动一个停止的容器

$ sudo docker container start 容器名/ID
docker ps -a #查看所有容器


3. 查看容器

docker container ls
docker ps
# 上面两个命令只能看运行中的容器
docker container ls -a
docker ps -a 
# 下面两个命令可以查看所有的容器,包含以退出的容器

4. 停止容器

docker container stop 容器名/id
docker stop 容器名/id

5. 删除容器

docker container rm 容器名/id
docker rm 容器名/id

6. 启动一个退出的容器

docker container start 容器名/id
docker start 容器名/id
相关文章
|
6天前
|
监控 Java 应用服务中间件
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
39 23
|
7天前
|
监控 Java 应用服务中间件
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
41 22
|
10天前
|
监控 Java 应用服务中间件
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
52 25
|
22天前
|
Ubuntu Linux 开发工具
docker 是什么?docker初认识之如何部署docker-优雅草后续将会把产品发布部署至docker容器中-因此会出相关系列文章-优雅草央千澈
Docker 是一个开源的容器化平台,允许开发者将应用程序及其依赖项打包成标准化单元(容器),确保在任何支持 Docker 的操作系统上一致运行。容器共享主机内核,提供轻量级、高效的执行环境。本文介绍如何在 Ubuntu 上安装 Docker,并通过简单步骤验证安装成功。后续文章将探讨使用 Docker 部署开源项目。优雅草央千澈 源、安装 Docker 包、验证安装 - 适用场景:开发、测试、生产环境 通过以上步骤,您可以在 Ubuntu 系统上成功安装并运行 Docker,为后续的应用部署打下基础。
docker 是什么?docker初认识之如何部署docker-优雅草后续将会把产品发布部署至docker容器中-因此会出相关系列文章-优雅草央千澈
|
11天前
|
SQL 关系型数据库 MySQL
docker-compose部署mysql8
使用docker-compose容器化部署mysql8
|
1月前
|
关系型数据库 应用服务中间件 PHP
实战~如何组织一个多容器项目docker-compose
本文介绍了如何使用Docker搭建Nginx、PHP和MySQL的环境。首先启动Nginx容器并查看IP地址,接着启动Alpine容器并安装curl测试连通性。通过`--link`方式或`docker-compose`配置文件实现服务间的通信。最后展示了Nginx配置文件和PHP代码示例,验证了各服务的正常运行。
59 3
实战~如何组织一个多容器项目docker-compose
|
1月前
|
Java 应用服务中间件 Docker
将基于 Spring 的 WAR 应用程序部署到 Docker:详尽指南
将基于 Spring 的 WAR 应用程序部署到 Docker:详尽指南
45 2
|
5月前
|
运维 Java Devops
阿里云云效操作报错合集之部署docker时遇到报错,该怎么办
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
运维 Kubernetes 前端开发
【云原生】阿里云服务器部署 Docker Swarm集群
阿里云服务器 一键部署 Docker Swarm 集群!
711 0
【云原生】阿里云服务器部署 Docker Swarm集群
|
弹性计算 数据可视化 关系型数据库
使用阿里云部署基于docker的mysql云服务
本篇文章将介绍如何使用阿里云安装docker、部署mysql服务,并远程连接至远端mysql
718 1
使用阿里云部署基于docker的mysql云服务

热门文章

最新文章