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按顺序排列,时间也可以自己定。

相关推荐
豆豆豆豆变3 小时前
Docker轻量级可视化工具Portainer
docker·容器·自动化运维
花晓木3 小时前
k8s etcd 数据损坏处理方式
容器·kubernetes·etcd
运维&陈同学3 小时前
【模块一】kubernetes容器编排进阶实战之基于velero及minio实现etcd数据备份与恢复
数据库·后端·云原生·容器·kubernetes·etcd·minio·velero
花晓木3 小时前
k8s备份 ETCD , 使用velero工具进行备份
容器·kubernetes·etcd
大熊程序猿3 小时前
xxl-job docker 安装
运维·docker·容器
shelby_loo3 小时前
使用 Docker 在 Ubuntu 下部署 Cloudflared Tunnel 服务器
服务器·ubuntu·docker
咏颜4 小时前
Ubuntu离线安装Docker容器
linux·运维·服务器·经验分享·ubuntu·docker
怡雪~6 小时前
Kubernetes使用Ceph存储
ceph·容器·kubernetes
一勺菠萝丶8 小时前
MongoDB 常用操作指南(Docker 环境下)
数据库·mongodb·docker
Mitch3118 小时前
【漏洞复现】CVE-2015-3337 Arbitrary File Reading
elasticsearch·网络安全·docker·漏洞复现