Docker入门(一)

Docker介绍及安装

Docker官网:https://docs.docker.com/engine/install/centos/
Docker官方镜像仓库:https://hub.docker.com/

什么是docker

docker是一个能够将应用程序容器化的工具,具备打包,分发,部署等功能。容器与容器之间相互隔离,互不影响,也就是说可以在一台服务器上正常运行两个甚至多个不兼容的服务。每一个容器可以看作一个轻量的虚拟机,容器的目录和Linux相似。

docker安装

Docker一般安装在服务器上,以CentOS为例,在官网上的安装方式设置存储库命令如下(不建议):

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

但是在后续安装引擎命令的时候容易报 “网络不可达”的错误。所以建议使用另一条命令,使用阿里的仓库:

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

设置存储仓后可以进行下载安装:

# 查看可用版本
yum list docker-ce --showduplicates | sort -r
# 运行结果
docker-ce.x86_64    3:26.1.3-1.el9    docker-ce-stable
docker-ce.x86_64    3:26.1.2-1.el9    docker-ce-stable

第二列是版本字符串,下载通过其完整限定软件包名称安装特定版本如:docker-ce-3:26.1.2-1.el9
下载指定版本docker命令:

yum -y install docker-ce-替换成版本字符串
#  查看docker版本,验证是否成功
docker -v

# 开机自启
sudo systemctl start docker
sudo systemctl enable docker

配置docker镜像加速

以阿里云镜像加速为例,登录阿里云,依次选择“产品 -> 容器 -> 容器镜像服务ACR ”

在这里插入图片描述
在这里插入图片描述
可以直接复制粘贴下面的命令在服务器运行配置

docker镜像

# 查看本地镜像列表
docker images
# 搜索远程镜像仓库
docker search 镜像名称
# pull拉取镜像,不写版本号默认为最新的版本
docker pull 镜像名称:版本号
# 删除指定镜像
docker rmi 镜像名称/id

以redis为例

[root@localhost]# docker pull redis
Using default tag: latest
latest: Pulling from library/redis
a2abf6c4d29d: Pull complete 
c7a4e4382001: Pull complete 
4044b9ba67c9: Pull complete 
c8388a79482f: Pull complete 
413c8bb60be2: Pull complete 
1abfd3011519: Pull complete 
Digest: sha256:db485f2e245b5b3329fdc7eff4eb00f913e09d8feb9ca720788059fdc2ed8339
Status: Downloaded newer image for redis:latest
docker.io/library/redis:latest
[root@localhost]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
redis        latest    7614ae9453d1   2 years ago   113MB
mysql        latest    3218b38490ce   2 years ago   516MB
[root@localhost mysql]# docker rmi redis
Untagged: redis:latest
Untagged: redis@sha256:db485f2e245b5b3329fdc7eff4eb00f913e09d8feb9ca720788059fdc2ed8339
Deleted: sha256:7614ae9453d1d87e740a2056257a6de7135c84037c367e1fffa92ae922784631
Deleted: sha256:49c70179bc923a7d48583d58e2b6c21bde1787edf42ed1f8de9e9b96e2e88e65
Deleted: sha256:396e06df5d1120368a7a8a4fd1e5467cdc2dd4083660890df078c654596ddc1c
Deleted: sha256:434d118df2e9edb51238f6ba46e9efdfa21be68e88f54787531aa39a720a0740
Deleted: sha256:2047f09c412ff06f4e2ee8a25d105055e714d99000711e27a55072e640796294
Deleted: sha256:13d71c9ccb39b206211dd1900d06aa1984b0f5ab8abaa628c70b3eb733303a65
Deleted: sha256:2edcec3590a4ec7f40cf0743c15d78fb39d8326bc029073b41ef9727da6c851f
[root@localhost]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
mysql        latest    3218b38490ce   2 years ago   516MB

docker容器

# 查看当前正在运行的容器
docker ps
# 查看所有容器
docker ps -a
# 创建并运行容器(mysql)
docker run -d \ 
> -p 3306:3306 \
> --name=mysqltest \
> -v /root/mysql/conf:/etc/mysql/conf.d \
> -v /root/mysql/logs:/logs \
> -v /root/mysql/data:/var/lib/mysql \
> -e MYSQL_ROOT_PASSWORD=123 \
> mysql

参数说明:
-d: 后台运行
-p:端口映射,第一个端口为宿主机端口,第二个端口是容器的端口
–name:容器名称
-v:数据目录挂载,宿主机目录/文件:容器目录/文件
-e:环境配置,这里是设置的MySQL的root密码
mysql:最后的mysql是 镜像名称:版本号不指定版本号则为默认的 latest最新版本。

若本地不存在指定的mysql镜像则会从远程仓库拉取镜像并创建容器。

# 查看容器信息
docker inspect 容器名称
# 进入指定运行中的容器
docker exec -it 容器名称 /bin/bash
# 从容器退出
exit
# 启动容器
docker start 容器名称
# 停止容器
docker stop 容器名称
# 删除指定容器
docker rm 容器名称/ID
  • 8
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值