ubantu安装docker以及docker-compose

ubantu安装docker以及docker-compose

安装docker

环境:Ubuntu23.04

1、从官方存储库中安装Docker

sudo apt update
sudo apt install docker.io

2、启动Docker服务

sudo systemctl start docker

#使用以下命令设置Docker服务在系统启动时自动启动:
sudo systemctl enable docker

3、验证

使用以下命令验证Docker是否正确安装:

docker --version

如果安装正确,将显示Docker的版本信息。

4、测试docker运行使用

拉取镜像

sudo docker pull hello-world

运行镜像

sudo docker run hello-world

如下输出则说明docker运行正常:

尝试搜索镜像:	sudo docker search hello-world
拉取测试镜像:	docker pull hello-world
查看镜像:		sudo docker images
run启动镜像: 	sudo docker run hello-world

5、使用

我们的应用程序需要部署在一个具有特定软件版本的环境中。我们可以使用Docker来创建一个包含这些特定软件版本的容器,并在其中运行我们的应用程序。

首先,在项目目录中创建一个名为Dockerfile的文件,并使用以下内容填充它:

FROM ubuntu:23.04

# 安装所需软件版本
RUN apt update && apt install -y <software-package>

# 拷贝应用程序到容器
COPY /path/to/your/application /app

# 设置工作目录
WORKDIR /app

# 执行应用程序
CMD ["./your-application"]

在上面的Dockerfile中,我们使用FROM指令选择了基础镜像,这里选择的是Ubuntu 23.04版本。然后,我们使用RUN指令安装了我们所需的特定软件版本。接下来,使用COPY指令将我们的应用程序拷贝到容器中,并使用WORKDIR指令设置工作目录。最后,使用CMD指令执行应用程序。

接下来,打开终端并在项目目录中执行以下命令来构建Docker镜像:

docker build -t my-app-image .

这将根据当前目录中的Dockerfile构建一个名为my-app-image的镜像。

最后,使用以下命令来运行我们的应用程序:

docker run -it my-app-image

现在,我们的应用程序在一个具有特定软件版本的Docker容器中成功运行。

安装docker compose

安装 Docker Compose 需要先安装 Docker,因为 Docker Compose 是基于 Docker 引擎构建的。安装完成 Docker 后,可以使用以下命令下载最新版本的 Docker Compose:

# 安装curl
sudo apt install curl
# 安装Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

下载完成后,需要添加执行权限:

sudo chmod +x /usr/local/bin/docker-compose

验证 Docker Compose 是否安装成功,可以运行以下命令:

docker-compose --version

使用docker部署服务

1、需要再opt文件夹下创建以下文件夹,/opt文件夹目录说明

/opt/compose:docker容器编排文件及jar包文件夹

/opt/config:服务读取的config.xml配置文件

/opt/data:存储服务内的生成的文件

/opt/log:admin服务的log日志

/opt/package:部署的服务安装包

2、可将已备份对应文件夹拷至对应文件夹下

文件见:板卡所备份出的文件及文件夹

3、在/opt/compose目录下执行命令,创建镜像,启动容器

sudo docker-compose -f docker-compose.yml up -d

4、完毕后以下命令查看容器启动情况

sudo docker ps

5、使用以下命令查看服务log日志

sudo docker logs <容器id>

设置docker自启动

1、设置docker开机启动

sudo systemctl enable docker.service

2、配置rc.local

在文件末尾添加以下内容:

编辑 rc-local.service 文件,赋予修改权限
sudo chmod 777 /lib/systemd/system/rc-local.service 
sudo vim /lib/systemd/system/rc-local.service

3、rc-local.service 服务开机启动:

sudo systemctl enable rc-local.service
sudo systemctl status rc-local.service

4、创建rc.local文件

vim /etc/rc.local

文件内容,对应修改容器id,按下面启动服务顺序修改对应容器id

sleep 10s:docker restart <容器id>
sleep 16s:docker restart <容器id>
sleep 16s:docker restart <容器id>
sleep 18s:docker restart <容器id>
sleep 18s:docker restart <容器id>
sleep 18s:docker restart <容器id>
sleep 18s:docker restart <容器id>
sleep 18s:docker restart <容器id>
sleep 18s:docker restart <容器id>
sleep 18s:docker restart <容器id>

这里是重点啦,根据你自己的需求把docker容器id按顺序排列,时间也可以自己定。

相关推荐
川石课堂软件测试1 小时前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana
昌sit!7 小时前
K8S node节点没有相应的pod镜像运行故障处理办法
云原生·容器·kubernetes
追风林8 小时前
mac 本地docker-mysql主从复制部署
mysql·macos·docker
A ?Charis10 小时前
Gitlab-runner running on Kubernetes - hostAliases
容器·kubernetes·gitlab
城南vision10 小时前
Docker学习—Docker核心概念总结
java·学习·docker
wclass-zhengge10 小时前
Docker篇(Docker Compose)
运维·docker·容器
北漂IT民工_程序员_ZG11 小时前
k8s集群安装(minikube)
云原生·容器·kubernetes
梦魇梦狸º14 小时前
腾讯轻量云服务器docker拉取不到镜像的问题:拉取超时
docker·容器·github
鬼才血脉14 小时前
docker+mysql配置
mysql·adb·docker
詹姆斯爱研究Java14 小时前
Docker 的基本概念和优势
docker