提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
Docker是一个开源的的容器化平台,它的应用范围是比较广的,主要应用场景有微服务架构、持续集成和持续部署(CI/CD)以及混合云与多云部署,对于我而言,我使用的场景是CI/CD,最近尝试了一下在Ubuntu 22.04系统上安装了docker,对于docker小白的我,遇到的坑比较多,好在最终成功了,中间查了很多文章,对我来说,有些地方说的比较笼统,结合我的实践,把docker安装流程捋明白一些。
一、查看Ubuntu内核版本
uname -r
# docker要求操作系统的内核版本在3.10及以上
二、安装docker前的环境准备
1.更新系统软件包列表
sudo apt update
2.安装必要的依赖包
代码如下(示例):
sudo apt install apt-transport-https ca-certificates curl software-properties-common
apt-transport-https:支持通过https获取软件包。
ca-certificates:提供证书验证机制,确保连接的安全性,能更安全的通过https下载所需要的软件包。
curl:命令行下的数据传输工具。
software-properties-common:方便管理软件源和软件属性,让用户更便捷的添加、删除以及更新软件源。
添加Docker官方的GPG密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
添加Docker官方的软件源
Ubuntu 22.04
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu jammy stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Ubuntu 20.04
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu focal stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Ubuntu 18.04
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu bionic stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
再次更新系统软件包列表
sudo apt update
安装Docker
sudo apt install docker-ce docker-ce-cli containerd.io
启动Docker
# 启动docker
systemctl start docker
# 验证docker是否安装成功
docker run hello-world
当你运行之后,会出现下方类似的报错
docker pull ubuntu
Using default tag: latest
Error response from daemon: Get "https://registry-1.docker.io/v2/": dial tcp 104.244.46.71:443: i/o timeout
出现这个问题就需要配置镜像加速,这位大佬的标题就是100%成功,哈哈哈,果然,执行完立马就好使了,嘎嘎好用。原文地址:
https://blog.csdn.net/weixin_46594796/article/details/142757626
大致指令如下:
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://8er86g8v.mirror.aliyuncs.com",
"https://docker.1panel.live/"
]
}
EOF
执行完之后,再去拉取镜像,就会发现,它成功了,那么恭喜你,docker安装成功并拉取了你的第一个镜像。
三、mysql 容器部署
原理
我理解下来是创建的mysql容器是作为server端,Ubuntu系统,也即宿主机当作客户端,也就是在客户端去登录到服务端,去做一些操作。(个人理解哈,有问题可以评论给俺讲哈)
拉取mysql镜像
# 不指定mysql版本的话,docker默认拉取最新的版本
docker pull mysql:5.7
# 我这里使用的版本是5.7的,一般来说,新版都有潜在风险,所以整个稳定版本,可以避免一些问题,哈哈哈
确认Ubuntu上是否安装了mysql
# 我安装过了,执行结果如下
~# mysql --version
mysql Ver 8.0.40-0ubuntu0.22.04.1 for Linux on x86_64 ((Ubuntu))
如果没有的话,会有提示,根据提示使用apt进行安装即可
贴心的我给你放在下方了
sudo apt-get install mysql-client
运行mysql docker
# 先确认mysql是否在运行
docker ps
# 执行下面指令运行
docker run --name mysql_test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
# --name 是给你起的这个容器创建一个名字
# -p 是把docker的3306端口映射到宿主机的3306端口
# -e 设置mysql容器的登录密码
# -d 后台运行
远程登录mysql容器
mysql -h <宿主机IP地址> -u <用户名> -p
# 宿主机IP地址的查看,在Ubuntu上输入ifconfig,查看docker信息里,有一个inet后面跟的IP地址,那个就是宿主机的ip地址
# 用户名一般都是root
登录成功如下图:
总结
今天的分享到此结束,待我再深入研究研究,有收获再来分享,互联网小菜鸡在线学习中。
标签:Ubuntu,apt,22.04,https,mysql,docker,Docker From: https://blog.csdn.net/qwer521we/article/details/143951829