linux系统离线安装docker
如何使用docker部署c/c++程序
docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH
docker cp [OPTIONS] CONTAINER:DEST_PATH SRC_PATH
options 可用参数
-a:将复制的文件或目录保留其原始属性,包括所有者、权限等。
-L:如果SRC_PATH是一个符号链接,则复制链接指向的文件或目录。
-p:保留源文件或目录的时间戳。
-R或-r:递归复制整个目录。
CONTAINER,可以是正在运行或已停止的容器,名称或ID均可
SRC_PATH,源文件或目录在容器内的路径
DEST_PATH,目标路径在主机上的位置
在 /etc/profile 末尾添加
if [ "$DISPLAY" != "" ]
then
xhost +
fi
在执行 更新
source /etc/profile
docker search gcc #搜索
docker pull gotoeasy/ubuntu-desktop #下载
docker images #查看所有镜像
编写Dockerfile 拷贝文件等操作
vim Dockerfile
#FROM gcc:latest
#RUN mkdir /usr/src/myapp
#COPY test.c /usr/src/myapp
#WORKDIR /usr/src/myapp
#RUN gcc test.c
#CMD ["./a.out"]
FROM gotoeasy/ubuntu-desktop:latest
RUN mkdir /usr/src/myapp
COPY untitled /usr/src/myapp
执行命令构建生成镜像
docker build -t ubuntu-desktop:v1 .
启动镜像
docker run -d ubuntu-desktop:v1
图形化 带网络启动
docker run -itd -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=unix$DISPLAY -e GDK_SCALE -e GDK_DPI_SCALE --privileged --network host ubuntu-desktop:v1 bash
如果在xshell中进入docker容器启动图形界面,则
docker run -itd -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY -v $HOME/slides:/root/slides -v $HOME/.Xauthority:/root/.Xauthority -e GDK_SCALE -e GDK_DPI_SCALE --privileged --network host ubuntu-rt9:v1 bash
查看所有容器及运行情况
docker ps -a
根据id 进入容器
docker exec -it 50f35be4b872 bash
apt update
apt install xarclock
xarclock
此时如果所在系统有网,容器也可以在线安装相关包
比如
apt-get install qt-default
apt-get install make
docker commit -a "sby" -m "creat a new docker image by sby" 50f35be4b872 ubuntu-desktop:v2
docker save -o ubuntu-desktop-v2.tar ubuntu-desktop:v2
docker load -i ubuntu-desktop-v2.tar
其他安装docker
loongarch64 docker安装
1. 龙芯开源社区下载离线安装
# http://pkg.loongnix.cn/loongnix/pool/main/d/docker-ce/
docker-ce-cli_20.10.3-7.1_loongarch64.deb docker-ce-rootless-extras_20.10.3-7.1_loongarch64.deb
docker-ce_20.10.3-7.1_loongarch64.deb
# http://pkg.loongnix.cn/loongnix/pool/main/c/containerd.io/
containerd.io_1.4.3-1.lnd.1_loongarch64.deb
2. 安装离线软件包
sudo apt install ./*.deb -y