Linux安装dorck和使用

dorck优点

  1. 持续集成
    在项目快速迭代情况下,轻量级容器对项目快速构建、环境打包、发布等流程就能提高工作效率
  2. 版本控制
    每个镜像就是一个版本,在一个项目多个版本时可以很方便管理
  3. 可移植性
    容器可以移动到任意一台Docker主机上,而不需要过多关注底层系统
  4. 标准化
    应用程序环境及依赖、操作系统等问题,增加了生产环境故障率,容器保证了所有配置、依赖始终不变
  5. 隔离性与安全
    容器之间的进程是相互隔离的,一个容器出现问题不会影响其他容器

CentOS 具体要求如下:

必须是 64 位操作系统
建议内核在 3.8 以上

通过以下命令查看 CentOS 内核:

uname -r
如果执行以上命令后,输出的内核版本号低于 3.8,请参考下面的方法来来升级您的 Linux 内核

对于 CentOS 6.5 而言,内核版本默认是 2.6。首先,可通过以下命令安装最新内核:
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -ivh http://www.elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm
yum -y --enablerepo=elrepo-kernel install kernel-lt

随后,编辑以下配置文件:
vi /etc/grub.conf
default=1修改为default=0。最后,通过reboot命令重启操作系统。重启后如果不出意外的话,再次查看内核, CentOS 内核将会显示为 3.10。

安装 Docker

Centos 8 不能依赖数据源 解决办法
在这里插入图片描述
转载解决:https://blog.csdn.net/Bilal_0/article/details/126078111

更新yum命令
yum update
yum install docker

如果安装失败提示缺少依赖则参照一下步骤安装docker-ce版本

安装依赖包

yum install -y yum-utils device-mapper-persistent-data lvm2

添加Docker软件包源

yum-config-manager
–add-repo
https://download.docker.com/linux/centos/docker-ce.repo

更新yum包索引

yum makecache fast

安装Docker CE

yum install docker-ce

查看 Docker 是否安装成功:

docker version

启动

systemctl start docker

如果启动报错
在这里插入图片描述
原因是CentOS默认使用podman代替docker,所以需要将podman卸载.
1.输入yum erase podman buildah卸载podaman,之后输入y,等待卸载直到出现“完毕
2.yum install -y yum-utils
3.sudo yum-config-manager
–add-repo
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4.安装docker CE:sudo yum install -y docker-ce docker-ce-cli containerd.io
5.启动Docker服务systemctl start docker

重启docker

systemctl restart docker

查看docker状态

systemctl status docker

停止docker:

systemctl stop docker

开机启动:

systemctl enable docker

卸载

yum remove docker-ce rm -rf /var/lib/docker

Docker镜像操作

Docker镜像是由文件系统叠加而成(是一种文件的存储形式)。最底端是一个文件引导系统,即bootfs,这很像典型的Linux/Unix的引导文件系统。Docker用户几乎永远不会和引导系统有什么交互。实际上,当一个容器启动后,它将会被移动到内存中,而引导文件系统则会被卸载,以留出更多的内存供磁盘镜像使用。Docker容器启动是需要的一些文件,而这些文件就可以称为Docker镜像。
那么问题来了,我们从哪里下载镜像呢?

列出镜像列表
我们可以使用 docker images 来列出本地主机上的镜像。
各个选项说明:

  • REPOSITORY:表示镜像的仓库源
  • TAG:镜像的标签
  • IMAGE ID:镜像ID
  • CREATED:镜像创建时间
  • SIZE:镜像大小

搜索镜像

第一步 安装 docker
第一步 查看镜像 docker search mysql/tomcat
第二步 拉去镜像 docker pull 镜像名称

如果你需要从网络中查找需要的镜像,可以通过以下命令搜索
docker search 镜像名称
#docker searche jdk

NAME:仓库名称
DESCRIPTION:镜像描述
STARS:用户评价,反应一个镜像的受欢迎程度
OFFICIAL:是否官方
AUTOMATED:自动构建,表示该镜像由Docker Hub自动构建流程创建的

Docker Hub是由Docker公司负责维护的公共注册中心,包含大量的容器镜像,Docker工具默认从这个公共镜像库下载镜像。
https://hub.docker.com/explore 默认是国外的源,下载会慢,
可以使用国内的源提供下载:
https://lug.ustc.edu.cn/wiki/mirrors/help/docker
步骤:
(1)编辑文件:
#如果该文件不存在就手动创建
vi /etc/docker/daemon.json
(2)在该文件中输入如下内容:
{ “registry-mirrors”: [“http://f1361db2.m.daocloud.io”] }
(3)注意:一定要重启docker服务,如果重启docker后无法加速,可以重新启动OS
systemctl restart docker.service

拉取镜像

1.先要查询是否有这个镜像文件
docker search 文件名(mysql tomcat)

2.拉取镜像
docker pull name(文件名):tag(对应的版本)
如果没有写标签,默认使用latest(最近的)

3.查看拉取的镜像文件 有一个imageID
docker images | grep tomcat

4.删除拉取的镜像(根据镜像ID进行删除)
docker rmi image-id

Docker容器操作

查看容器
查看正在运行容器:
docker ps

查看所有的容器(启动过的历史容器):
docker ps –a

查看最后一次运行的容器:
docker ps –l

查看停止的容器
docker ps -f status=exited

创建与启动容器

创建容器常用的参数说明:
创建容器命令:docker run
-i:表示运行容器
-t:表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端。
–name :为创建的容器命名。
-v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。
-d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i -t两个参数,创建后就会自动进去容器)。
-p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p做多个端口映射

安装相关软件

为了搭建 Java Web 运行环境,我们需要安装 mysql 与 Tomcat,下面的过程均在容器内部进行。我们不妨选择/usr/local目录作为安装目录,首先需要通过/usr/local命令进入该目录。

Tomcat部署

1.创建Tomcat容器
docker run --name tomcat -p 8080:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat
2.查询刚才运行的容器
docker ps -a

MySQL部署

拉取MySQL镜像
查看镜像
docker search mysql

拉取mysql镜像
docker pull mysql

查看docker已安装镜像
docker images

创建Mysql容器
docker run -di --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

-p 代表端口映射,格式为 宿主机映射端口:容器运行端口
-e 代表添加环境变量 MYSQL_ROOT_PASSWORD是root用户的登陆密码
进入mysql容器
docker exec -it mysql /bin/bash

登录
mysql mysql -u root -p123456

修改密码
use mysql
alter user ‘root’@‘%’ identified with mysql_native_password by ‘root’;

刷新
flush privileges;

我们可以通过以下命令查看容器运行的各种数据
docker inspect mysql

备份与迁移

容器保存为镜像
我们可以通过以下命令将容器保存为镜像
docker commit mysql mysqlbak
mysql 是容器名称
mysqlbak是新的镜像名称
此镜像的内容就是你当前容器的内容,接下来你可以用此镜像再次运行新的容器

镜像备份
docker save -o mysql577.tar mysql577

-o 输出到的文件
执行后,运行ls命令即可看到打成的tar包
镜像恢复与迁移
首先我们先删除掉mysql镜像
docker rmi mysql

然后执行此命令进行恢复
docker load -i mysqlbak.tar

-i 输入的文件
执行后再次查看镜像,可以看到镜像已经恢复

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值