ubuntu中使用docker

上一篇我已经下载了一个ubuntu:20.04的镜像;

  1. 查看所有镜像
bash 复制代码
sudo docker images
  1. 基于本地存在的ubuntu:20.04镜像创建一个容器,容器的名为cppubuntu-1。创建的时候就会启动容器。
bash 复制代码
sudo docker run -itd --name cppubuntu-1 ubuntu:20.04

结果出现长串的容器ID号,说明创建容器cppubuntu-1成功

  1. 查看docker中有哪些容器
bash 复制代码
sudo docker ps -a
  1. 停止运行容器。
bash 复制代码
sudo docker stop 2ffec3839753
  1. 启动容器
bash 复制代码
sudo docker start 2ffec3839753
  1. 通过容器ID号删除容器(注意只有停止运行的容器才能删除)
bash 复制代码
sudo docker rm 容器的ID号
  1. 通过容器ID号进入容器内部
bash 复制代码
sudo docker exec -it 2ffec3839753 /bin/bash
  1. 查看容器当前大小
bash 复制代码
sudo docker ps -s
  1. 将宿主机上的文件拷贝到容器内部
bash 复制代码
sudo docker cp /home/lmz/workspace/opencv4_10_0_tools/opencv-4.10.0.zip 2ffec3839753:/home/lmz/tools
bash 复制代码
sudo docker cp ./cmake-3.31.6.tar.gz 2ffec3839753:/home/lmz/tools

搭建c++开发环境

  1. 安装gcc/g++
bash 复制代码
apt-get install build-essential

9.1 查看编译器版本

bash 复制代码
gcc --version
g++ --version
make --version

10 指定版本安装CMake

10.1 安装ssl库

bash 复制代码
sudo apt-get install libssl-dev

10.2 解压安装包

bash 复制代码
tar -zxvf cmake-3.31.6.tar.gz && cd cmake-3.31.6

10.3 查看配置文件

bash 复制代码
./bootstrap --help

10.4 配置(将cmake安装到指定的位置)

bash 复制代码
./bootstrap --prefix=/usr/local/cmake

10.5 编译cmake源文件(指定8个线程编译源文件)

bash 复制代码
make -j8

10.6 安装cmake

bash 复制代码
make install

10.7 将cmake的安装路径添加环境变量

打开 【vim /etc/profile】文件,在文件末尾输入一下内容:

bash 复制代码
# cmake env path 
export PATH=/usr/local/cmake/bin:$PATH

10.8 刷新环境变量

bash 复制代码
source /etc/profile

10.9 验证是否安装成功

切换到任意目录下执行如下命令,验证安装是否成功

bash 复制代码
cmake --version

安装成功的样子:

10.10 删除cmake的源码目录和源码压缩包(不影响已经安装好的cmake) ,免得占总docker容器空间。

bash 复制代码
rm -fr ./cmake-3.31.6
rm -rf ./cmake-3.31.6.tar.gz

注意,如果你和我一样,虚拟机上的宿主机是ubuntu20.04。

在宿主机上安装docker。docker容器cppubuntu-1以ubuntu:20.04镜像文件创建的,并且在容器内部搭建开发环境,那么你关机虚拟机之后,容器会停止。cmake环境会找不到。
再次开机进入到容器后,需要重新刷新环境变量

bash 复制代码
source /etc/profile

可以不指定cmake的安装目录,会不需要这一步吧

**********************************************************************************************************

安装opencv--c++开发环境

相关推荐
fetasty6 小时前
rustfs加picgo图床搭建
docker
蝎子莱莱爱打怪21 小时前
GitLab CI/CD + Docker Registry + K8s 部署完整实战指南
后端·docker·kubernetes
chlk1231 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑1 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件1 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
深紫色的三北六号2 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash2 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
小p2 天前
docker学习7:docker 容器的通信方式
docker
小p2 天前
docker学习5:提升Dockerfile水平的5个技巧
docker
小p2 天前
docker学习3:docker是怎么实现的?
docker