文章目录
- 前言
- 一、docker官网
- 二、安装docker
- 1、第一种方式(官方)
- 2、使用脚本安装(阿里云):
- 3、使用官方脚本安装:
- 拉取镜像(solo博客部署)
前言
Docker是一款开源的容器化平台,它可以让开发者将应用程序及其依赖项打包到一个可移植的容器中,从而实现轻松部署、运行和管理应用程序。Docker的容器技术可以将一个应用程序运行所需的所有软件、库和配置文件打包到一个容器中,然后将该容器发布到任何支持Docker的服务器上进行部署,无需担心中间环境的配置问题。使用Docker,开发者可以快速构建、测试和交付应用程序,大大缩短了开发周期和部署时间,提高了开发效率。同时,由于Docker的容器技术可以隔离不同的应用程序和服务,保证了它们之间的安全性和可靠性,降低了应用程序出错和崩溃的风险。因此,Docker已成为当今广泛使用的虚拟化技术之一,受到了广泛的欢迎和应用。
一、docker官网
https://docs.docker.com/
二、安装docker
使用Ubuntu安装:
https://docs.docker.com/engine/install/ubuntu/
1、第一种方式(官方)
使用官方提供的安装方式直接安装:
- 设置存储库:
更新软件包索引并安装软件包以允许使用 基于 HTTPS 的存储库:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
- 添加 Docker 的官方 GPG 密钥:
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o/etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
- 使用以下命令设置存储库:
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
- 安装 Docker 引擎
更新包索引:apt
sudo apt-get update
- 安装 Docker Engine、containerd 和 Docker Compose。
特定版本:
# List the available versions:
apt-cache madison docker-ce | awk '{ print $3 }'
5:24.0.0-1~ubuntu.22.04~jammy
5:23.0.6-1~ubuntu.22.04~jammy
<...>
要安装最新版本,请运行:
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
- 验证
通过运行映像验证 Docker 引擎安装是否成功。hello-world
sudo docker run hello-world
安装成功:
2、使用脚本安装(阿里云):
阿里自动化的脚本把命令已经封装好了直接运行即可安装:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
3、使用官方脚本安装:
curl -fsSL https://test.docker.com -o test-docker.sh
sudo sh test-docker.sh
拉取镜像(solo博客部署)
这里我部署一个博客系统:
docker pull mysql:latest
docker images
docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=julien_qiao mysql
进入容器:
创建一个数据库:
部署一个solo的博客系统:
docker pull b3log/solo
docker run --detach --name solo --network=host \
--env RUNTIME_DB="MYSQL" \
--env JDBC_USERNAME="root" \
--env JDBC_PASSWORD="julien_qiao" \
--env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" \
--env JDBC_URL="jdbc:mysql://127.0.0.1:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true" \
b3log/solo --listen_port=8080 --server_scheme=http --server_host=localhost --server_port=
访问地址+端口:
这里使用的云主机将3306端口禁止访问(安全):
简单部署完成: