当前位置: 首页 > news >正文

ubuntu中使用docker

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

1. 查看所有镜像

sudo docker images

2. 基于本地存在的ubuntu:20.04镜像创建一个容器,容器的名为cppubuntu-1。创建的时候就会启动容器。

sudo docker run -itd --name cppubuntu-1 ubuntu:20.04

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

3.  查看docker中有哪些容器

sudo docker ps -a

4. 停止运行容器。

sudo docker stop 2ffec3839753

5. 启动容器

sudo docker start 2ffec3839753

6. 通过容器ID号删除容器(注意只有停止运行的容器才能删除)

sudo docker rm 容器的ID号

7. 通过容器ID号进入容器内部

sudo docker exec -it 2ffec3839753 /bin/bash

8. 查看容器当前大小

sudo docker ps -s

9. 将宿主机上的文件拷贝到容器内部

sudo docker cp /home/lmz/workspace/opencv4_10_0_tools/opencv-4.10.0.zip 2ffec3839753:/home/lmz/tools
sudo docker cp ./cmake-3.31.6.tar.gz 2ffec3839753:/home/lmz/tools

----------------------------------------------------------------------------------------------------------------------

搭建c++开发环境

9. 安装gcc/g++

apt-get install build-essential

9.1 查看编译器版本

gcc --version
g++ --version
make --version

10 指定版本安装CMake

10.1 安装ssl库

sudo apt-get install libssl-dev

10.2 解压安装包

tar -zxvf cmake-3.31.6.tar.gz && cd cmake-3.31.6

10.3 查看配置文件

./bootstrap --help

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

./bootstrap --prefix=/usr/local/cmake

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

make -j8

10.6 安装cmake

make install

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

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

# cmake env path 
export PATH=/usr/local/cmake/bin:$PATH

10.8 刷新环境变量

source /etc/profile

10.9 验证是否安装成功

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

cmake --version

安装成功的样子:

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

rm -fr ./cmake-3.31.6
rm -rf ./cmake-3.31.6.tar.gz

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

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

source /etc/profile

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

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

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

相关文章:

  • [总结篇]个人网站
  • 深入剖析Nginx:从入门到高并发架构实战
  • 二.单例模式‌
  • 网页绘制表格
  • 基于 TAPD 进行项目管理
  • centos7编译安装LNMP架构
  • 408第一季 - 数据结构 - 树与二叉树
  • 前端 Electron 桌面应用学习笔记
  • Linux 文本三剑客(grep, awk, sed)
  • Flask与Celery 项目应用(shared_task使用)
  • Android资源ID冲突解决方案
  • 对比学习
  • 添加禁用状态
  • 黑马点评【基于redis实现共享session登录】
  • 6️⃣Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙
  • 前端开发者常用网站
  • Cursor Rules 使用
  • AI Agent 架构设计:ReAct 与 Self-Ask 模式对比与分析
  • vue · 插槽 | $slots:访问所有命名插槽内容 | 插槽的使用:子组件和父组件如何书写?
  • JavaWeb基础入门 — SpringBoot Web 案例详解
  • 怎样建设香港网站/制作网站要找什么公司
  • 做网站百度云/网上培训
  • 5大动态网站资料/网络推广怎么做才有效
  • 聚美优品网站建设策划书/泰安百度推广代理商
  • 佛山网站建设哪个好点/百度搜索引擎优化
  • 小程序模板源下载/引擎优化seo