#打卡不停更# Docker 基本使用方式 原创

ATRI_
发布于 2022-10-22 15:16
浏览
0收藏

创建容器并上传至dockerhub

1.创建一个images

  • 首先进入一个目录,在目录中创建Dockerfile
mkdir dockerProject && cd dockerProject
touch Dockerfile

Dockerfile内容如下

FROM ubuntu:20.04 # 拉取的镜像

MAINTAINER test # 作者

RUN apt update # 执行语句

EXPOSE 80 # 端口

  • 运行如下命令创建镜像
sudo docker build . -t name

其中,name更换为镜像名,也可以是如下格式:

test/first:tag

这个语句的意思是,镜像是属于test的,仓库名称是first,名称是tag。

在命令中,build后面有一个‘.’ 表示当前目录,即使用的Dockerfile在当前目录下。

2.创建容器

  • 命令:
sudo docker run -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY -p 8888:22 -it --name name image
  • -v和-e是为了docker可以调用UI界面,–name后面的name是创建的容器名称,image是通过某个镜像来创建。
  • -p后面的参数是指将容器的22端口映射到宿主机的8888端口

3.进入容器

xhost + #进入容器前要打开服务,让docker可以使用UI界面
sudo docker start name #打开容器
sudo docker exec -it name /bin/bash #进入容器
# ctrl+D 或者 $ exit 退出容器
sudo docker stop name #关闭容器

在容器中,使用Ctrl+D可以退出容器

4.上传容器

  • 登录docker,需要先在hub.docker.com注册好账号。
sudo docker login
# 根据提示输入用户名和password

退出账号命令:

sudo docker logout
  • 将做好的容器制作为镜像:
sudo docker commit -a "authorname" -m "message" imageID 用户名/镜像别名:1.0.0

其中,authorname是创建者的名称,message是提交的信息内容,dockerID是容器的id,可以通过sudo docker ps -a查到,用户名是docker的用户名,镜像别名自定义,1.0.0是版本号。注意替换authorname和message时应保留双引号。

  • 将容器上传到dockerhub:
sudo docker push 用户名/镜像别名
# 下载此镜像:
sudo docker pull 用户名/镜像别名

docker访问主机的设备

  • 对于当前版本的Docker,您可以使用该–device标志来实现所需的功能,而无需授予对所有USB设备的访问权限。例如,如果您只想/dev/ttyUSB0在Docker容器中进行访问,则可以执行以下操作:docker run -t -i --device=/dev/ttyUSB0 ubuntu bash
  • 使用主机网络:sudo docker run --privileged -t -i --device=/dev/ttyUSB0 -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY -it --network=host --name fast_lio 1269505366/sim:fast_lio

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
分类
已于2022-10-22 15:16:56修改
1
收藏
回复
举报
回复
    相关推荐