Etapas completas para implantar a imagem do docker ROS2 no ambiente ubuntu18.04

  • sudo docker run -d --privileged=true --runtime=nvidia 
    --gpus=all --net=host --ipc=host --restart=always -v 
    /dev:/dev -v /data/autocar:/home/mogo/data --name 
    map_test mogohub.tencentcloudcr.com/autocar-ros2/df:mystart_RoboTaxi_df_1.0.0.30_ros2_202
    30524_dev

        Este é um comando para executar um aplicativo de aprendizado de máquina no Docker, que executa o aplicativo como uma imagem do Docker, acelerada com GPUs NVIDIA.

        Especificamente, os significados dos parâmetros deste comando são os seguintes:

  • sudo: Execute o comando com privilégios de administrador.
  • docker run: um comando para executar um contêiner do Docker.
  • -d: permite que o contêiner seja executado em segundo plano.
  • --privileged=true: Executa o container em modo privilegiado, com acesso a todos os dispositivos do host.
  • --runtime=nvidia: especifica que o contêiner é executado em uma GPU NVIDIA.
  • --gpus=all: aloca todas as GPUs disponíveis para o contêiner.
  • --net=host: usando o modo de rede do host, o contêiner compartilha a pilha de rede com o host.
  • --ipc=host: usando o namespace host IPC (Inter-Process Communication), o contêiner compartilha IPC com o host.
  • --restart=always: reinicie automaticamente o contêiner depois que ele parar.
  • -v /dev:/dev: monte o diretório do host  /dev no  /dev diretório do contêiner para que o contêiner possa acessar os dispositivos do host.
  • -v /data/autocar:/home/mogo/data: monte o diretório do host  /data/autocar no  /home/mogo/data diretório do contêiner para que o contêiner possa acessar os dados do host.
  • --name map_test: Dê ao contêiner um nome de  map_test.
  • mogohub.tencentcloudcr.com/autocar-ros2/df:mystart_RoboTaxi_df_1.0.0.30_ros2_20230524_dev: especifica o nome da imagem do Docker e o número da versão a ser executada.

        Resumindo, a função deste comando é executar um contêiner Docker em modo privilegiado, usar GPU NVIDIA para aceleração e permitir que o contêiner compartilhe a rede e o namespace IPC com o host, bem como o dispositivo host e os dados, para para executar o aplicativo de aprendizado de máquina contido no programa de imagem.

  • sudo docker pull mogohub.tencentcloudcr.com/autocar
    /system-redis:system-redis_CDXTJG_Default_1.0.0.2_6_
    log_20230329_dev

 A função desse comando é extrair uma imagem do Docker com o nome mogohub.tencentcloudcr.com/autocar/system-redise o número da versão        do repositório de imagens do Docker especificado  . system-redis_CDXTJG_Default_1.0.0.2_6_log_20230329_devDepois que uma imagem é extraída,  docker run comandos podem ser usados ​​para iniciar aplicativos ou serviços contidos nessa imagem.

  • mkdir -p /data/autocar/log/redis

  • sudo docker run -d --privileged --network host -v /data/autocar/log/redis:/var/log/redis:rw --restart=always --name redis redis镜像名

Modificação da configuração:

1. Altere o ip em /opt/ros/humble/etc/redis_conn_conf.json autocar image para o ip da máquina virtual. Pit point: Lembre-se de alterar o ip em /run.sh de forma síncrona, caso contrário a configuração será restaurada após reiniciar o container. Em seguida, reinicie a imagem autocar

2. Execute no espelho redis: Execute este comando (por padrão, o vim e outros softwares de edição não são instalados no docker) echo -e '#!/bin/bash\nredis-server /etc/redis/redis.conf' > /run.sh (o padrão é no carro real, há um julgamento de ip do carro real) remova a linha de julgamento. Reinicie o espelho redis

Acho que você gosta

Origin blog.csdn.net/John_ToStr/article/details/130877293
Recomendado
Clasificación