Docker私有Registry在CentOS6.X下安装指南(2)



同样会提示输入一些内容,选择y就可以了!

 
安装,配置,运行nginx
 
(1) 添加组和用户:
groupadd www -g 58
useradd -u 58 -g www www


(2) 下载nginx源文件:
cd /tmp
wget
cp ./nginx-1.4.6.tar.gz /tmp/


(3) 编译,安装nginx:
tar zxvf ./nginx-1.4.6.tar.gz
cd ./nginx-1.4.6 && \
  ./configure --user=www --group=www --prefix=/opt/nginx \
  --with-pcre \
  --with-http_stub_status_module \
  --with-http_ssl_module \
  --with-http_addition_module  \
  --with-http_realip_module \
  --with-http_flv_module && \
  make && \
  make install
cd /tmp
rm -rf /tmp/nginx-1.4.6/
rm /tmp/nginx-1.4.6.tar.gz


(4) 生成htpasswd
htpasswd -cb /opt/nginx/conf/.htpasswd ${USER} ${PASSWORD}


(5) 编辑/opt/nginx/conf/nginx.conf文件
#daemon off;

# 使用的用户和组
user  www www;
# 指定工作进程数(一般等于CPU总核数)
worker_processes  auto;

# 指定错误日志的存放路径,错误日志记录级别选项为:[debug | info | notic | warn | error | crit]
error_log  /var/log/nginx_error.log  error;

#指定pid存放的路径
#pid        logs/nginx.pid;

# 指定文件描述符数量
worker_rlimit_nofile 51200;

events {
    # 使用的网络I/O模型,Linux推荐epoll;FreeBSD推荐kqueue
    use epoll;
    # 允许的最大连接数
    worker_connections  51200;
    multi_accept on;
}

http {
  include      mime.types;

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                    '$status $body_bytes_sent "$http_referer" '
                    '"$http_user_agent" "$upstream_addr"';

access_log  /var/log/nginx_access.log  main;

# 服务器名称哈希表的桶大小,该默认值取决于CPU缓存
  server_names_hash_bucket_size 128;
  # 客户端请求的Header头缓冲区大小
  client_header_buffer_size 32k;
  large_client_header_buffers 4 32k;

# 启用sendfile()函数
  sendfile        on;
  tcp_nopush      on;
  tcp_nodelay    on;

keepalive_timeout  65;

upstream registry {
    server 127.0.0.1:5000;
  }

server {
    listen      443;
    server_name  192.168.2.114;

ssl                  on;
    ssl_certificate /etc/nginx/ssl/nginx.crt;
    ssl_certificate_key /etc/nginx/ssl/nginx.key;

client_max_body_size 0; # disable any limits to avoid HTTP 413 for large image uploads

# required to avoid HTTP 411: see Issue #1486 (https://github.com/docker/docker/issues/1486)
    chunked_transfer_encoding on;

location / {
      auth_basic "registry";
      auth_basic_user_file /opt/nginx/conf/.htpasswd;

root  html;
      index  index.html index.htm;

proxy_pass                  ;
      proxy_set_header  Host          $http_host;
      proxy_set_header  X-Real-IP      $remote_addr;
      proxy_set_header  Authorization  "";

client_body_buffer_size    128k;
      proxy_connect_timeout      90;
      proxy_send_timeout          90;
      proxy_read_timeout          90;
      proxy_buffer_size          8k;
      proxy_buffers              4 32k;
      proxy_busy_buffers_size    64k;  #如果系统很忙的时候可以申请更大的proxy_buffers 官方推荐*2
      proxy_temp_file_write_size  64k;  #proxy缓存临时文件的大小
    }
    location /_ping {
      auth_basic off;
      proxy_pass ;
    }
    location /v1/_ping {
      auth_basic off;
      proxy_pass ;
    }
  }
}


(6) 验证配置
/opt/nginx/sbin/nginx -t


输出:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/15814.html