虚拟机+Docker配置主机代理和常见配置

完整配置流程如下:

  1. 配置虚拟机使用宿主机代理:
# 设置环境变量(宿主机IP为192.168.100.1,代理端口7890)
export http_proxy=http://192.168.100.1:7890
export https_proxy=http://192.168.100.1:7890

# 测试代理是否生效
curl -I google.com

虚拟机+Docker配置主机代理和常见配置_第1张图片

  1. 配置Docker守护进程使用代理:
# 创建Docker服务的配置目录
sudo mkdir -p /etc/systemd/system/docker.service.d

# 创建代理配置文件
sudo vi /etc/systemd/system/docker.service.d/http-proxy.conf

# 在配置文件中添加以下内容:
[Service]
Environment="HTTP_PROXY=http://192.168.100.1:7890"
Environment="HTTPS_PROXY=http://192.168.100.1:7890"

# 重新加载配置并重启Docker服务
sudo systemctl daemon-reload
sudo systemctl restart docker

# 测试Docker是否可以正常拉取镜像
docker search redis
  1. 如果之前配置了镜像源,可以清理 /etc/docker/daemon.json:
sudo vi /etc/docker/daemon.json

# 内容修改为:
{
  "ipv6": false
}

# 修改后重启Docker服务
sudo systemctl restart docker

注意事项:

  • 确保宿主机的代理软件已开启

  • 确保代理软件允许局域网访问
    在这里插入图片描述

  • 确保使用正确的宿主机IP地址

  • 所有修改配置后都需要重启相关服务

验证

  • 输入docker search redis
    虚拟机+Docker配置主机代理和常见配置_第2张图片

设置Mysql 、Redis 开机自启

要设置容器随Docker自动启动,我们需要使用 --restart always 参数。让我们先删除现有容器,然后重新创建:

  1. 首先删除现有容器(如果正在运行):
docker rm -f redis mysql
  1. 重新创建MySQL容器(带自动启动参数):
docker run -d \
  --name mysql \
  --restart always \
  -p 3306:3306 \
  -e TZ=Asia/Shanghai \
  -e MYSQL_ROOT_PASSWORD=1234 \
  -v /root/mysql/data:/var/lib/mysql \
  -v /root/mysql/conf:/etc/mysql/conf.d \
  -v /root/mysql/init:/docker-entrypoint-initdb.d \
  --network hm-net \
  mysql
  1. 创建Redis容器(带自动启动参数):
docker run -d \
  --name redis \
  --restart always \
  -p 6379:6379 \
  -v /home/redis/conf/redis.conf:/etc/redis/redis.conf \
  -v /home/redis/data:/data \
  --network hm-net \
  redis \
  redis-server /etc/redis/redis.conf
  1. 验证
docker inspect -f "{{.Name}}: {{.HostConfig.RestartPolicy.Name}}" redis mysql

在这里插入图片描述

你可能感兴趣的:(虚拟机配置,docker,容器,运维,后端,安全)