美文网首页
Docker 入门

Docker 入门

作者: wudl | 来源:发表于2021-11-05 23:03 被阅读0次

3.docker 中的nginx 安装:

3.1 拉去nginx

docker pull nginx:latest

3.2 创建nginx 容器

docker run -di --name=mynginx -p 8089:80 nginx
docker run -di --name=容器名字 -p 宿主机端口:容器端口  容器名称
[root@basenode ~]# docker run -di --name=mynginx -p 8089:80 nginx
7dadd6a15e8a5f44906e3637b1199eb84dfd76ec249dd15413fc61fd34e462fa

3.3 停止和删除这个 容器

# 停止nginx 容器
[root@basenode ~]# docker stop mynginx
mynginx

#删除这个容器
[root@basenode ~]# docker rm c8896b00a6c0cc3c9e3ef20746fd5330be4b5bbc734ab66d360badc1e3bc3352
c8896b00a6c0cc3c9e3ef20746fd5330be4b5bbc734ab66d360badc1e3bc3352

重启容器
[root@basenode ~]# docker restart c8896b00a6c0cc3c9e3ef20746fd5330be4b5bbc734ab66d360badc1e3bc3352
c8896b00a6c0cc3c9e3ef20746fd5330be4b5bbc734ab66d360badc1e3bc3352

3.4进入容器修改配置

命令:docker exec -it mynginx bash

[root@basenode ~]# docker ps
CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS         PORTS                                   NAMES
7dadd6a15e8a   nginx     "/docker-entrypoint.…"   12 minutes ago   Up 3 minutes   0.0.0.0:8089->80/tcp, :::8089->80/tcp   mynginx
[root@basenode ~]# docker exec -it mynginx bash
root@7dadd6a15e8a:/# ls
bin  boot  dev  docker-entrypoint.d  docker-entrypoint.sh  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
root@7dadd6a15e8a:/# cd /etc/

3.4.1先安装 vim

apt-get update: 这个命令的作用是:同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包。
然后再执行 : apt-get install vim
然后就可以修改。

3.5 修改完重启就可以。

docker restart c8896b00a6c0cc3c9e3ef20746fd5330be4b5bbc734ab66d360badc1e3bc3352

4. 安装mysql8 实例:

docker pull mysql

4.1 启动容器

docker run -d --name=mysql8 -p 13308:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

4.2 进入容器

docker exec -it mysql8 bash

4.3 修改mysql

1 .mysql -u root -p

  1. alter user 'root'@'%' identified by 'Admin@12345' password expire never;
  2. alter user 'root'@'%' identified with mysql_native_password by 'Admin@12345';
  3. flush privileges;

然后用客户端连接


在这里插入图片描述

5.docker 的通用命令

5.1 进入容器命令: docker exec -it 容器名称 bash

5.2. 文件的拷贝

docker cp 需要拷贝的文件或目录 容器名称:容器目录
例如:

[root@basenode conf]# docker ps
CONTAINER ID   IMAGE                     COMMAND                  CREATED          STATUS             PORTS                                                    NAMES
176d9ef661cb   mysql                     "docker-entrypoint.s…"   42 minutes ago   Up 28 minutes      33060/tcp, 0.0.0.0:13306->3306/tcp, :::13306->3306/tcp   02mysql5.7
7dadd6a15e8a   nginx                     "/docker-entrypoint.…"   2 hours ago      Up About an hour   0.0.0.0:8089->80/tcp, :::8089->80/tcp                    mynginx
a11eac200b39   centos/mysql-57-centos7   "container-entrypoin…"   4 weeks ago      Up 48 minutes      0.0.0.0:3307->3306/tcp, :::3307->3306/tcp                mysql5.7
[root@basenode conf]# docker cp flink-conf.yaml 02mysql5.7:/usr/local/
[root@basenode conf]# docker exec -it  02mysql5.7  bash
root@176d9ef661cb:/# cd /usr/local/
root@176d9ef661cb:/usr/local# ls
bin  etc  flink-conf.yaml  games  include  lib  man  sbin  share  src
root@176d9ef661cb:/usr/local# 

5.3 目录挂载

目录挂载: 在创建容器的时候,将宿主机的目录与容器内的目录进行映射,这样我们就可以通过修改宿主机某个目录的文件从而去影响容器。

# 创建并启动容器mycentos3,并挂载linux中的/usr/local/myhtml目录到容器的/usr/local/myhtml;也就是在linux中的/usr/local/myhtml中操作相当于对容器相应目录操作
docker run -di --name=容器的名字 -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos3 centos:7

比如:docker run -di --name=mycentos3 -v /usr/local/myhtml:/usr/local/myhtml centos:7

5.4 查看容器的ip

docker inspect 容器名称(容器ID)


相关文章

网友评论

      本文标题:Docker 入门

      本文链接:https://www.haomeiwen.com/subject/vesdzltx.html