遇到的Docker常用命令
遇到的Docker常用命令
一、安装Docker
1)Docker 要求 CentOS 系统的内核版本高于 3.10 ,首先查看系统内核版本是否满足
uname r
2)使用 root 权限登录系统,确保 yum 包更新到最新
sudo yum update y
3)假如安装过旧版本,先卸载旧版本
sudo yum remove docker dockercmon dockerselinux dockerengine
4)安装 yumutil 工具包和 devicemapper 驱动依赖
sudo yum install y yumutils devicemapperpersistentdata lvm2
5)设置 yum 源(加速 yum 下载速度)
sudo yumconfigmanager addrepo
download.docker/linux/centos/dockerce.repo
如果连接超时,可以使用 alibaba 的镜像源:
sudo yumconfigmanager addrepo
mirrors.aliyun/dockerce/linux/centos/dockerce.repo
6)查看所有仓库中所有 docker 版本,并选择特定版本安装,一般可直接安装最新版
yum list dockerce showduplicates | sort r
7)安装 docker
(1)安装最新稳定版本的方式:
sudo yum install dockerce y #安装的是最新稳定版本,因为 repo 中默认只开启 stable 仓库
(2)安装指定版本的方式:
sudo yum install <FQPN> y
# 例如:
sudo yum install dockerce20.10.11e y
8)启动并加入开机启动
sudo systemctl start docker #启动 docker
sudo systemctl enable docker #加入开机自启动
9)查看 Version,验证是否安装成功
docker version
若出现 Client 和 Server 两部分内容,则证明安装成功
2.使用Docker开发镜像编译
1)下载源码并解压
通过 wget 下载(或者手动上传下载好的压缩包)。
wget
dist.apache/repos/dist/dev/incubator/doris/0.15/0.15.
0rc04/apachedoris0.15.0incubatingsrc.tar.gz
解压到/opt/software/
tar zxvf apachedoris0.15.0incubatingsrc.tar.gz C
/opt/software
2)下载 Docker 镜像
docker pull apache/incubatordoris:buildenvfor0.15.0
可以通过以下命令查看镜像是否下载完成。
docker images
3)挂载本地目录运行镜像
以挂载本地 Doris 源码目录的方式运行镜像,这样编译的产出二进制文件会存储在宿主
机中,不会因为镜像退出而消失。同时将镜像中 maven 的 .m2 目录挂载到宿主机目录,以
防止每次启动镜像编译时,重复下载 maven 的依赖库。
docker run it \
v /opt/software/.m2:/root/.m2 \
v /opt/software/apachedoris0.15.0incubatingsrc/:/root/apachedoris0.15.0incubatingsrc/ \
apache/incubatordoris:buildenvfor0.15.0
4)切换到 JDK 8
alternatives set java java1.8.0openjdk.x86_64
alternatives set javac java1.8.0openjdk.x86_64
export JAVA_HE=/usr/lib/jvm/java1.8.0
5)准备 Maven 依赖
编译过程会下载很多依赖,可以将我们准备好的 dorisrepo.tar.gz 解压到 Docker 挂载的对应目录,来避免下载依赖的过程,加速编译。
tar zxvf dorisrepo.tar.gz C /opt/software
也可以通过指定阿里云镜像仓库来加速下载:
vim /opt/software/apachedoris0.15.0incubatingsrc/fe/p.xml
在
<repository>
<id>aliyun</id>
<url>maven.aliyun/nexus/content/groups/public/</url>
</repository>
vim /opt/software/apachedoris0.15.0incubatingsrc/be/p.xml
在
<repository>
<id>aliyun</id>
<url>maven.aliyun/nexus/content/groups/public/</url>
</repository>
6)编译 Doris
sh build.sh
如果是第一次使用 buildenvfor0.15.0 或之后的版本,第一次编译的时候要使用如下命令:
sh build.sh clean be fe ui
因为 buildenvfor0.15.0 版本镜像升级了 thrift(0.9 > 0.13),需要通过clean 命令强制
使用新版本的 thrift 生成代码文件,否则会出现不兼容的代码。
7) 查看Docker容器id,进入容器
docker ps
docker exec it *docker_id /bin/bash
上一篇:lca最近公共祖先(模板)
下一篇:【模板】判断二分图
Docker