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++开发环境

相关推荐
极限实验室5 小时前
使用 Docker Compose 简化 INFINI Console 与 Easysearch 环境搭建
数据库·docker·devops
Two_brushes.6 小时前
【linux 网络】网络基础
linux·网络
Code Warrior6 小时前
【Linux】基础开发工具(3)
linux·服务器
鬼才血脉6 小时前
Linux(centos)安装 MySQL 8
linux·mysql·centos
guygg886 小时前
ubuntu手动编译VTK9.3 Generating qmltypes file 失败
linux·运维·ubuntu
JeffersonZU7 小时前
Linux/Unix 套接字Socket编程(socket基本概念,流程,流式/数据报socket,Unix domain socket示例)
linux·c语言·tcp/ip·udp·unix·gnu
牧天白衣.7 小时前
Docker相关内容
docker·容器·eureka
一切顺势而行7 小时前
k8s 使用docker 安装教程
docker·容器·kubernetes
Andy杨7 小时前
20250707-2-第二章:Kubernetes 核心概念-K8s集群架构,生产部署K8s两_笔记
docker·容器
小安运维日记7 小时前
CKS认证 | Day4 最小化微服务漏洞
安全·docker·微服务·云原生·容器·kubernetes