Are all compilers Turing Machines?
No, a compiler takes as string as input and checks if that string is syntactically correct. If it is, it outputs another string (code in a different language, e.g., machine code) that is equivalent to the input; if it is not, it outputs "syntax error".

A Turing machine is an abstract machine (i.e., a description of a machine, rather than an actual physical thing) that performs computations. According to the Church&ndash;Turing thesis, anything that can be computed by any physical system can be computed by a Turing machine.  Since compilers are implemented on physical systems, one could, in principle, design a Turing machine that computes the same mapping from strings to strings as any given compiler.  But it's not true that a compiler is a Turing machine; rather, a compiler does something that a Turing machine can also do.