Docker安装Ubuntu详细过程(个人学习笔记)

docker官网:http://www.docker.com

Docker Hub官网: https://hub.docker.com/ 相当于镜像库,可以拉取镜像到本地,创建容器。

创建步骤:

由于docker必须创建在基于linux内核的虚拟环境中,所以必须在linux环境下创建:

安装docker基本可以按照官网一步一步实现:

https://docs.docker.com/engine/install/ubuntu/

1.卸载之前版本docker

 sudo apt-get remove docker docker-engine docker.io containerd runc

2.安装(采取最常见安装方式)

2.1Set up the repository

 sudo apt-get update

$ sudo apt-get install \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

2.2 Add Docker’s official GPG key:

这里注意最好替换成国内阿里源,安装速度更快。

sudo mkdir -p /etc/apt/keyrings

curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

2.3Use the following command to set up the repository:

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] http://mirrors.aliyun.com/docker-ce/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

3.Install Docker Engine 

 sudo apt-get update
 $ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin

4.检验docker是否安装成功

 sudo docker run hello-world

 如果出现

 则为成功。

5.阿里云镜像加速

注册一个属于自己的阿里云账户(可复用淘宝账号)

 

 

 按照操作文档无脑复制就行。

6.在docker中安装ubuntu

启动docker: systemctl start docker
停止docker: systemctl stop docker
重启docker: systemctl restart docker
查看docker状态: systemctl status docker
开机启动: systemctl enable docker
查看docker概要信息: docker info
查看docker总体帮助文档: docker --help
查看docker命令帮助文档: docker 具体命令 --help

6.1启动docker

 systemctl start docker

6.2在docker上搜索ubuntu镜像,这里以20.04版本为例

docker search ubuntu

6.3直接从库中拉取对应版本号的镜像

docker pull ubuntu:20.04

6.4已经可创建docker容器了

docker run -it ubuntu:20.04 

此操作可生成一个随机id和名字的docker容器。并且进入交互式终端,操作docker中的容器。

 别忘了更新:

apt-get upgrade

很重要!!!

### 如何在Docker容器安装ROS 2 为了在Docker容器内成功部署和配置ROS 2环境,需遵循一系列特定的操作流程。首先,在构建镜像之前确认宿主机上的Docker版本满足最低需求,例如已知兼容的版本为Docker version 20.10.18, build b40c2f6[^1]。 #### 准备工作 确保移除可能存在的旧版Docker组件以避免冲突,这可以通过执行如下命令完成: ```bash sudo apt-get remove docker docker-engine docker.io containerd runc ``` 此操作有助于防止因遗留文件引起的问题[^2]。 #### 添加ROS 2官方仓库至APT源列表 通过向系统的APT源列表添加ROS 2官方仓库来简化后续软件包管理过程。具体做法是利用shell指令将指定URL写入新的源列表文件中: ```bash sudo sh -c 'echo "deb [arch=amd64,arm64] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" > /etc/apt/sources.list.d/ros2-latest.list' ``` 上述命令中的`$(lsb_release -cs)`部分用于动态获取当前Ubuntu发行版代号,从而确保所使用的资源链接与操作系统相匹配[^3]。 #### 构建自定义Dockerfile 创建一个新的名为`Dockerfile`的文字档,并在其内部编写必要的指令集以便于自动化地搭建所需的开发环境。下面是一个简单的例子: ```dockerfile FROM ubuntu:focal # 设置环境变量 ENV DEBIAN_FRONTEND noninteractive # 更新apt缓存并安装基础依赖项 RUN apt-get update && \ apt-get install -y curl gnupg lsb-release # 导入ROS GPG密钥 RUN curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | gpg --dearmor -o /usr/share/keyrings/ros-archive-keyring.gpg # 配置ROS APT源 COPY ./sources.list /etc/apt/sources.list.d/ros2-latest.list # 安装ROS 2核心元包以及其他工具链 RUN apt-get update && \ apt-get install -y ros-foxy-desktop python3-colcon-common-extensions python3-argcomplete # 初始化rosdep数据库 RUN rosdep init && \ rosdep update # 设定默认Shell提示符颜色方案 RUN echo "source /opt/ros/foxy/setup.bash" >> ~/.bashrc WORKDIR /workspace CMD ["bash"] ``` 这段脚本不仅包含了前面提到过的APT源更新逻辑,还进一步扩展了功能范围——比如设置了合适的GPG公钥验证机制以及预加载了一些常用的ROS 2桌面级应用和服务端口。 #### 使用Docker Compose加速项目启动 对于更复杂的多服务架构来说,采用[Docker Compose](https://docs.docker.com/compose/)不失为一种高效的方式。只需准备一份YAML格式的服务描述文档即可轻松实现一键编排多个相互关联的应用实例。不过针对单个ROS节点而言,则不必如此复杂;直接基于前述定制化的Dockerfile生成目标镜像就足够用了。 最后一步就是实际拉取或本地构建该镜像,并启动相应的交互式终端会话进入新建立起来的工作空间里开展下一步实验活动。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值