Docker 安装与使用

一.、Ubuntu如何安装docker

1、更新apt:

sudo apt update

2、安装依赖包

sudo apt install apt-transport-https ca-certificates curl software-properties-common

3、添加Docker的官方GPG密钥:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

4、添加Docker APT存储库:

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

5、再次更新apt软件包索引:

sudo apt update

6、确保从Docker存储库而不是默认存储库中安装:

apt-cache policy docker-ce

7、安装Docker:

sudo apt install docker-ce

8、验证Docker是否正确安装:

sudo systemctl status docker

二、构建docker镜像

要构建Docker镜像,需要编辑一个Dockerfile文件,来描述镜像的构建过程。

1、创建Dockerfile文件

新建一个空目录,然后创建一个名为Dockerfile的文本文件,将如下内容拷贝进去:

复制代码
# 设置继承自哪个镜像
FROM ubuntu:16.04

# 创建者信息
MAINTAINER gui <wx13427279549>

# 设置工作目录
WORKDIR /home/gui

# 在终端需要执行的命令
RUN echo "hello docker"

2、编译镜像

使用docker build命令在Dockerfile所在的目录中构建镜像:

sudo docker build -t my-ubuntu-gui .

这将创建一个名为my-ubuntu-gui的新镜像。-t标志指定了新镜像的名称。

3、查看镜像列表和镜像ID

sudo docker images

三、Docker常用命令

1、 镜像常用命令

复制代码
docker search centos #搜索镜像不带版本号默认latest
 
docker pull centos  #下载镜像
 
docker images #查看本地镜像
 
#镜像导出
====== 方法一 ======
docker save nginx -o nginx1.tar
 
====== 方法二 ======
docker save nginx > nginx2.tar
 
====== 方法三 ======
docker save nginx | gzip > nginx.tar.gz #导出并压缩到当前目录
 
#镜像导入
 
docker load -i centos.tar 

2、容器常用命令

复制代码
docker logs nginx #查看容器日志
 
#容器常用选项
 
-i #打开一个交互接口
 
-t  #分配一个tty
 
-d #后台运行容器
 
--name #容器名称
 
-P 大 #随机端口 镜像里必须有EXPOSE字段暴露端口
 
-p 小 #[宿主机端口]:[容器端口]/tcp  指定端口映射
 
--rm #当容器退出时自动清理容器
 
-e #容器传递环境变量
 
-v #给容器创建映射目录,数据卷 
#举例: docker run -v /path/dir1:/dir img:1 
 
-h  #指定主机名
 
$(docker ps -aq -f status=exited) #-f 指定参数
 
--restart  #容器在退出时重启策略
 
docker stop $(docker ps -qa -f name=test*) #批量停止容器
 
docker volume ls #查看卷
 
#常用方法举例
docker run -it --name test -v /data/:/www:ro -v /data/:/web busybox #:ro给挂载目录可读权限
 
docke exec id bash  #进入容器
 
ctrl + p + q  #退出容器不注销
 
docker ps -a  #显示所有容器包括死掉的
 
docker ps -aq  #显示所有容器并显示id
 
docker rm -f id  #即使容器正在运行当中,也会被强制删除掉
#举例: docker rm -f 38f6268f754e
 
docker run -P nginx #大P前台启动并随机映射端口
 
docker run -p 81:80 --name nginx_test nginx  #指定端口映射
 
docker port nginx #查看容器已经映射的端口
 
docker run -it --rm --name nginx-tets1 nginx  #容器退出后自动删除
 
#容器启动停止
docker stop id
docker start id 
 
docker stop $(docker ps -ap) #批量关闭正在运行的容器 
 
docker kill $(docker ps -aq) #批量强制关闭正在运行的容器

三、如何使用阿里云docker镜像服务

1、创建实例

打开阿里云,新建实例。

2、创建命名空间

个人实例创建成功之后,需要先继续创建命名空间,命名空间用来管理镜像仓库,所以必须先创建命名空间,才能创建镜像。

3、创建镜像仓库

4、配置镜像加速器

修改daemon文件:

复制代码
sudo gedit /etc/docker/daemon.json

重启docker:

systemctl restart docker

检查是否配置完成:

docker info

觉得有帮助的话,打赏一下呗。。

需要商务合作(定制程序)的欢迎私信!!

相关推荐
上天_去_做颗惺星 EVE_BLUE1 小时前
Docker入门教程:常用命令与基础概念
linux·运维·macos·docker·容器·bash
alden_ygq2 小时前
Kubernetes容器运行时:Containerd vs Docker
docker·容器·kubernetes
努力搬砖 ing2 小时前
Docker疑难杂症解决指南
docker·容器·eureka
林九生2 小时前
【Docker】Docker环境下快速部署Ollama与Open-WebUI:详细指南
java·docker·eureka
Grassto2 小时前
dockerfile: PaddleOCR hubserving api 服务
docker·ocr·paddleocr
ZHOU_WUYI3 小时前
Flask Docker Demo 项目指南
python·docker·flask
撸码到无法自拔9 小时前
docker常见命令
java·spring cloud·docker·容器·eureka
hi,编程哥14 小时前
Docker、ECS 与 K8s 网段冲突:解决跨服务通信中的路由问题
docker·容器·kubernetes
How_doyou_do14 小时前
项目全栈实战-基于智能体、工作流、API模块化Docker集成的创业分析平台
运维·docker·容器
xbd_zc19 小时前
【Jenkins简单自动化部署案例:基于Docker和Harbor的自动化部署流程记录】
docker·自动化·jenkins·harbor