小随笔

No01

完成Centos7下docker的安装部署,需要配置镜像站点的加速器,并下载nginx镜像,使用数据卷发布个人网页。(网页信息中心必须包含,学生的学号,姓名,专业班级等信息)

具体的实现步骤:

1查看Linux版本

命令:

uname -a

2、使用yum命令安装Docker

命令:

yum -y install docker

3、启动docker服务并查看Docker的具体信息

命令:

systemctl start docker

docker info

4、配置加速器

命令:

方法一
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://f2k3b83v.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
方法二
vi /etc/docker/daemon.json
{
  "registry-mirrors": [
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn"
  ]
}
systemctl daemon-reload
systemctl restart docker

5、修改防火墙配置

命令:

systemctl stop firewalld.service

setenforce 0

getenforce 

6、搜索nginx镜像

命令:

docker search nginx

7、拉取nginx镜像

命令:

docker pull docker.io/nginx

8、创建数据卷

命令:

docker volume create --name 卷名

9、创建带有容器卷映射关系的nginx容器,容器的名称(nginx_名字拼音首字母)

命令:

docker run -d -p 5003:80 --name nginx_姓名 -v 卷名:/usr/share/nginx/html docker.io/nginx

10、创建个人站点 并发布到ngin容器中

命令:

cd /var/lib/docker/volumes/卷名/_data/
ls
rm -r index.html
vi index.html

11、在浏览器中查看项目发布成果
web访问http://127.0.0.1:5003

No02

题目:

​ 使用Python语言及第三方工具包,实现远程获取容器服务器上所有镜像名称的功能。

1查看服务器是否安装Docker服务

命令:

systemctl status docker

2、使用yum命令安装Docker

命令:

yum install docker -y

3、启动docker服务并查看Docker的具体信息

命令:

systemctl start docker 

systemctl info

4、修改位于/etc/sysconfig/docker的配置文件,设置守护进程及服务对应的端口

命令:

vi /etc/sysconfig/docker
#添加如下内容
OPTIONS='-H=tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock'

5、修改成功后重启Docker服务并关闭防火墙,并查看Docker的相关信息

命令:

systemctl restart docker

setenforce 0

systemctl stop firewalld

docker info

6、在Docker服务器中使用API地址(http://IP:端口/images/json)查看本机已存在的镜像表

浏览地址:http://127.0.0.1:2375/images/json

7、使用Pycharm创建项目。项目名称:getApi_学号,创建包,创建对象的py文件

8、在项目中下载并导入所需的网络访问包和Json的解析库

代码:

import json

import requests

9、编写代码调用DockerAPI来获取镜像列表并打印显示

代码:

import requests
import json
url='http://ip:2375/images/json'
response=requests.get(url)
content=response.content.decode('utf-8')
jsonstr=json.loads(content)
for i in jsonstr:
    if(i['RepoDigests']!=None):
        names=str(i['RepoDigests'][0]).split('@')[0].split('/')[-1]
        print(names)

No03

题目:

​ 使用navicatformysql,linux及Docker相关技术,实现虚拟数据库开发环境搭建。使用Docker服务创建Mysql的容器,并部署在Linux系统中,然后是宿主机的navicatformysql可视化终端工具,在mysql数据中创建一个名为StudentInfo的数据库,并创建数据表 student。表中包含如下字段:

stuid int(8) 主键 自增 编号

stuno varchar(20) 唯一 学号

stuname varchar(20) 姓名

stutel varchar(20) 电话

1查看服务器是否安装Docker服务

命令:

docker version

2、如果Docker服务不存在使用yum命令安装Docker,已存在则跳过本题

yum install docker -y

3、拉取mysql的镜像

命令:

docker pull mysql:5.6
#5.6版本成功率高,不用最新版本

4、创建mysql的容器,容器命名规则如xxx_mysql,并实现端口的映射3366:3306

命令:

docker run -di -p 3366:3306 --name 姓名_mysql -e MYSQL_ROOT_PASSWORD=123456 docker.io/mysql:5.6
出现错误:
iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 5000 -j DNAT --to-destination 172.18.0.4:5000 ! -i br-ff45d935188b: iptables: No chain/target/match by that name. (exit status 1)
解决方案一:重启docker,然后再重启你的容器
systemctl restart docker
docker start 容器名
解决方案二:
pkill docker 

iptables -t nat -F 

ifconfig docker0 down 

brctl delbr docker0 

docker -d 

systmctl restart docker

5、查看创建的是容器是否正常运行

命令:

docker ps

6、使用navicatformysql连接远程数据容器,并查测试连接是否成功。
注意:VMnet1和VMnet8记得开启

7、创建StudentInfo数据库,并创建student表(要求保留数据表的设计截图)

#先创建数据库,然后新建查询,运行下列代码
DROP TABLE IF EXISTS `student`;
CREATE TABLE `student`  (
  `stuid` int(8) NOT NULL AUTO_INCREMENT,
  `stuno` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `stuname` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `stutel` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  PRIMARY KEY (`stuid`) USING BTREE,
  UNIQUE INDEX `index_a`(`stuno`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
SET FOREIGN_KEY_CHECKS = 1;

8、在navicatformysql中新建数据查询,使用insert into 语句完成数据的添加功能(数据内容以自己的信息为准)

操作语句:

INSERT INTO student VALUES(NULL,'学号','姓名','电话')

9、使用select语句查询student表中的数据并显示

操作语句:

SELECT * FROM student

10、在mysql容器中查看数据库及表是否存在

进入容器Linux命令:

docker exec -it 容器名 /bin/bash

进入mysql服务的命令:

mysql -uroot -p123456

显示所有数据库列表的命令:

show databases;

查看studentinfo数据库中的表:

show tables from studentinfo;
#注意数据库名大小写

本人系列文章仅用作个人笔记整理,不做商用。其中部分来自网络,部分来自个人所学,难免有疏漏之处,望海涵。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

流苏树

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值