docker的安装和启动--centos7

docker概述

       简单来说,docker是一种容器技术,它可以让你将应用程序和它所需要的环境打包成一个独立的“容器”,这个容器可以在任何地方运行,而不需要担心环境的差异性和依赖关系。举个例子,就好比把一个装有软件和所有依赖项的电脑打包起来,然后在另一台电脑上直接运行,而不需要担心软件和环境的差异性,这样就可以方便地在不同的环境中部署和运行应用程序。

docker安装

       docker安装官网点这里,我们使用yum安装,步骤如下。

卸载旧版本

       如果安装新版本的docker,需要卸载旧版本的docker,但是存在于/var/lib/docker里的镜像、卷、容器、网络等不会删除。

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

安装依赖包,设置存储库

       在新的主机上首次安装Docker Engine时,需要设置docker仓库,之后,可以从仓库安装和更新docker。

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

安装Docker Engine, containerd, and Docker Compose

       安装 Docker 引擎、Docker 命令行工具、容器运行时和一些扩展插件,提供完整的 Docker 环境。

 yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

其中:
docker-ce:Docker 社区版,包括 Docker 引擎和一些命令行工具。
docker-ce-cli:Docker 命令行工具,用于管理 Docker 容器和镜像。
containerd.io:Docker 引擎使用的容器运行时。
docker-buildx-plugin:Docker 多平台构建插件,用于在不同的 CPU 架构和操作系统上构建 Docker 镜像。
docker-compose-plugin:Docker Compose 插件,用于管理多个 Docker 容器的编排和部署。

检查是否安装成功

[root@shengxia containers]# docker --version
Docker version 23.0.3, build 3e7cbfd

启动

正常启动

systemctl start docker

开机启动

systemctl enable docker

容器启动示例

启动一个nginx服务器

       使用docker run命令启动一个docker容器,运行nginx服务器,如下所示

[root@shengxia ~]# docker run -d -p 8090:80 --name shengxia-nginx nginx

其中
docker run:启动一个新的容器。
-d:以后台模式运行容器。
-p 8090:80:将主机的 8090 端口映射到容器的 80 端口。
--name shengxia-nginx:为容器指定一个名称
nginx:要运行的镜像名称,这里是 Nginx 服务器的官方镜像。

       在浏览器输入ip地址和端口号,如果出现以下图片,则说明容器启动成功。

启动一个mysql服务器

       使用docker run命令启动一个docker容器,运行mysql服务器,如下所示

[root@shengxia ~]# docker run -d --name shengxia-mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD='密码' mysql:5.7.39

其中:
docker run:启动一个新的容器。
-d:以后台模式运行容器。
-p 3307:3306:将主机的端口 3307 映射到容器的 3306 端口。
--name shengxia-mysql:为容器指定一个名称
-e MYSQL_ROOT_PASSWORD='密码': 设置mysql服务器的密码
mysql:5.7.39:要运行的镜像名称,这里是 mysql 服务器的5.7.39版本的镜像。

在容器内执行命令,开启一个终端

[root@shengxia ~]# docker exec -it shengxia-mysql bash

访问mysql

bash-4.2# mysql -uroot -p'密码'
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.39 MySQL Community Server (GPL)

Copyright (c) 2000, 2022, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

新建数据库

mysql> create database shengxia;
Query OK, 1 row affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| shengxia           |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

mysql> 

主机连接容器的mysql

新建一个user表,往表里插入数据
在这里插入图片描述

insert into shengxia.user (id,userName,userSex,userPhone) values (2,'xiaoxia','male','123456789');

mysql容器查看数据

mysql> select *  from user where id=2;
+----+----------+---------+-----------+
| id | userName | userSex | userPhone |
+----+----------+---------+-----------+
|  2 | xiaoxia  | male    | 123456789 |
+----+----------+---------+-----------+
1 row in set (0.00 sec)

mysql> 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值