docker 使用不添加sudo前缀
- 确认group:
- getent group
- 如果没有docker组:
- sudo groupadd docker
- 添加用户到docker组:
- sudo usermod -aG docker freja
- 重启docker:
- sudo systemctl restart docker
- 测试后依旧报错,如果是还是套接字问题"docker.socket"那么更改套接字文件权限:
- sudo chown freja /var/run/docker.socket
root用户权限下添加普通用户
创建用户
useradd freja
给freja添加sudo(组)权限,否则使用freja时会提示没有权限
usermod -aG sudo freja
root使用用户freja
su - freja
创建最基本的容器
从ubuntu:20.04创建容器,并把宿主机的/home/freja挂载到容器的/home中,交互模式运行
docker run -it -v /home/freja:/home --name mycontainer ubuntu:20.04
进入后可以使用exit推出
docker ps -a
docker start
ocker exec -it mycontainer /bin/bash
设置挂载点
docker run -v /host/path:/container/path image_name
端口映射
容器与宿主的端口映射除了创建容器时 -p 1234:80
还可以后期修改
添加:
docker container update --publish-add 8888:80 mycontainer
删除
docker container update --publish-rm 80 mycontainer
常用库:
apt-get install ca-certificates ssh git pip vim (p7zip-full不好使,用tar吧)
cmake使用编译安装较新版本(比apt源新)
GitHub - Kitware/CMake: Mirror of CMake upstream repository
选择合适的tag下载源代码tar.gz
解压:tar -xzvf CMake-3.25.1.tar.gzt
依赖:apt-get install build-essential libssl-dev (libssl-dev就是OpenSSL库)
安装:./bootstrap && make && sudo make install
继承问题:
1.当你使用一个保存了挂载点的容器创建镜像,并使用该镜像创建新的容器时,新的容器将不会自动继承之前容器的挂载点设置。
2.新的容器将默认继承之前容器的端口映射设置。
Docker 镜像是一个静态的快照,它包含了容器的文件系统和元数据。Docker 镜像包含了容器的元数据,其中也包括了容器的端口映射配置。
pip换源
临时
pip install open3d -i https://pypi.tuna.tsinghua.edu.cn/simple
长期
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
win脚本与linux脚本反斜杠格式问题
报错:/usr/bin/env: 'bash\r':
对脚本执行:sed -i 's/\r$//' 脚本名.sh
卸载apt install的系统软件包
卸载指定包:sudo apt-get remove cmake
卸载指定包后相关文件:sudo apt-get autoremove
Open3D安装
不要用0.15.1 hash码有问题,要用0.18.0
没有cuda环境要把cuda相关编译选项置为off
ISPC编译器是用在WIN上的,所以ISPC编译选项也要置为OFF
gitclone or下载
cd Open3D
util/install_deps_ubuntu.sh
mkdir build && cd build
cmake .. \
-DBUILD_CUDA_MODULE=OFF \
-DBUILD_TENSORFLOW_OPS=OFF \
-DBUILD_PYTORCH_OPS=OFF \
-DBUILD_GUI=OFF \
-DBUILD_ISPC_MODULE=OFF
make
sudo make install
-DCMAKE_POLICY_DEFAULT_CMP0135=NEW(可选)
提取时间戳和策略 CMP0135
sudo docker run --rm -it --shm-size=512m -p 6901:6901 -e VNC_PW=password
sudo docker run --rm -it --shm-size=512m -p 6901:6901 -e VNC_PW=awkward
容器到镜像:docker commit -m "" containername imagename:tagname
保存tar:docker save -o ubuntu_latest.tar ubuntu:latest
验证:ls -lh ubuntu_latest.tar
可视化KASM
ubunut22.04镜像 无sudo权限
https://hub.docker.com/r/kasmweb/ubuntu-jammy-desktop
添加sudo权限
https://kasmweb.com/docs/latest/how_to/running_as_root.html
win10+20.04镜像sudo权限
docker中安装Ubuntu20,浏览器访问其图形界面_docker ubuntu 图形界面-****博客