在docker上运行LCM

目录

1.加载镜像并进入容器

2.安装依赖

[3.在docker外部git-clone lcm](#3.在docker外部git-clone lcm)

4.将get-clone的lcm复制到容器中

5.编译库

6.将可执行文件复制到容器中

7.进入可执行文件

8.编译可执行文件

9.再开一个终端运行程序

10.将以上容器打成镜像并导出


1.加载镜像并进入容器

复制代码
sudo docker run -it ubuntu bash

mkdir app //建立app目录

2.安装依赖

复制代码
//换源
sed -i 's/http:\/\/archive.ubuntu.com\/ubuntu\//http:\/\/mirrors.aliyun.com\/ubuntu\//g' /etc/apt/sources.list

echo "nameserver 8.8.8.8" > /etc/resolv.conf

apt-get update \

    && apt-get install build-essential libglib2.0-dev cmake \

    && apt-get install default-jdk python-all-dev liblua5.1-dev golang doxygen

3.在docker外部git-clone lcm

复制代码
​
git clone https://github.com/lcm-proj/lcm.git

4.将get-clone的lcm复制到容器中

复制代码
docker cp /home/f**/lcm 87d:/app  //87d是创建容器生成的ID号

5.编译库

复制代码
cd lcm

vim /etc/profile

在最后一行添加

添加这个是因为jave解析有中文字符和无法识别的字符

export JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8

source /etc/profile

cmake ..

make

make install

以上步骤将环境都安装完成了

6.将可执行文件复制到容器中

这一步需要退出容器,exit退出容器,在ubuntu中执行一下命令。

docker cp /home/f*/LCM 87d:/app //87d是创建容器生成的ID号

LCM是可执行文件

7.进入可执行文件

复制代码
cd /app/LCM
lcm-gen -x example_t.lcm
g++ -o send_message send_message.cpp -llcm
g++ -o listener listener.cpp -llcm

8.编译可执行文件

复制代码
mkdir build
cd build
cmake ..
make

9.再开一个终端运行程序

复制代码
sudo docker exec -it 87d bash
cd /app/LCM/build
终端1 ./lister     终端2  ./send_message

10.将以上容器打成镜像并导出

退出镜像exit

提交容器

复制代码
docker commit 87df17537bc4 mylcm:v11

查看镜像

导出压缩包

复制代码
docker save -o lcm_images0108.tar mylcm:v11
相关推荐
GOKORURI34 分钟前
Podman + Nginx + Affine 踩坑教程
容器·教程·web
小刘|43 分钟前
腾讯云服务上下载docker以及使用Rabbitmq的流程
docker·rabbitmq·腾讯云
枷锁—sha1 小时前
跨站请求伪造漏洞(CSRF)详解
运维·服务器·前端·web安全·网络安全·csrf
云途行者1 小时前
使用 docker 安装 openldap
运维·docker·容器
群联云防护小杜1 小时前
深度隐匿源IP:高防+群联AI云防护防绕过实战
运维·服务器·前端·网络·人工智能·网络协议·tcp/ip
退役小学生呀1 小时前
十五、K8s可观测能力:日志收集
linux·云原生·容器·kubernetes·k8s
van叶~1 小时前
Linux探秘坊-------15.线程概念与控制
linux·运维·服务器
Andy杨2 小时前
20250718-5-Kubernetes 调度-Pod对象:重启策略+健康检查_笔记
笔记·容器·kubernetes
Andy杨3 小时前
20250718-1-Kubernetes 应用程序生命周期管理-应用部署、升级、弹性_笔记
linux·docker·容器
别致的影分身9 小时前
Docker 镜像原理
运维·docker·容器