.. Copyright (c) 2012-2021 Varnish Software AS SPDX-License-Identifier: BSD-2-Clause See LICENSE file for full text of license .. _users-guide-command-line: Required command line arguments ------------------------------- There only one command line argument you have to provide when starting Varnish, which is '-b' for where the backend server can be contacted. '-a' is another argument which is likely to require adjustment. If you have installed Varnish through using a provided operating system bound package, you will find the startup options here: * Debian, Ubuntu: `/etc/default/varnish` * Red Hat, Centos: `/etc/sysconfig/varnish` * FreeBSD: `/etc/rc.conf` (See also: /usr/local/etc/rc.d/varnishd) '-a' *<[name=][listen_address[,PROTO|,option=value,...]]>* ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Each '-a' argument defines one endpoint which Varnish should service HTTP requests on. The default is ``:80,http`` to listen on the Well Known Port for HTTP. If your webserver runs on the same machine, you will likely have to move it to another port number or bind it to a loopback address first. Multiple '-a' arguments can be provided to service multiple endpoints. *name* is the ``local.socket`` name for VCL. *listen_address* can be an IPv4 or IPv6 address with a port, a unix domain socket path or an abstract socket. See :ref:`varnishd(1)` for more details. Here are some examples:: -a http=:80 -a localhost:80,HTTP -a 192.168.1.100:8080 -a '[fe80::1]:80' -a '0.0.0.0:8080,[::]:8081' -a uds=/my/path,PROXY,mode=666 -a @abstract_socket '-f' *VCL-file* or '-b' *backend* ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Varnish needs to know where to find the HTTP server it is caching for. You can either specify it with the '-b' argument, or you can put it in your own VCL file, specified with the '-f' argument. Using '-b' is a quick way to get started:: -b localhost:81 -b thatotherserver.example.com:80 -b 192.168.1.2:80 Notice that if you specify a name, it can at most resolve to one IPv4 *and* one IPv6 address. For more advanced use, you will want to specify a VCL program with ``-f``, but you can start with as little as just:: backend default { .host = "localhost:81"; } which is, by the way, *precisely* what '-b' does. Optional arguments ^^^^^^^^^^^^^^^^^^ For a complete list of the command line arguments please see :ref:`varnishd(1) options `.